Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: Caduceus от Сентябрь 12, 2011, 12:53



Название: Как перевести double с красивую строку?
Отправлено: Caduceus от Сентябрь 12, 2011, 12:53
Необходимо число double перевести в строку определенного вида. То есть она должна быть фиксированной известной длины и если не хватает, но забивать пробелами, а если больше, то отсекать дробную часть. После запятой должно быть не больше 2 символов. Есть стандартные функции?


Название: Re: Как перевести double с красивую строку?
Отправлено: Пантер от Сентябрь 12, 2011, 13:10
QString::number


Название: Re: Как перевести double с красивую строку?
Отправлено: cya-st от Сентябрь 12, 2011, 17:46
Сейчас точно не вспомню, приблизительно так:
Код:
QString("%1").arg(dVal, 0, 'f', 2);


Название: Re: Как перевести double с красивую строку?
Отправлено: kambala от Сентябрь 12, 2011, 17:50
через QString::number() будет короче и понятнее :)


Название: Re: Как перевести double с красивую строку?
Отправлено: gorec323 от Сентябрь 12, 2011, 21:47
Код:
double d = 3.14;
QString l = QSting::number(d, 'f', 2).leftJustified(7, '.');    // l == "3.14..."
QString r = QSting::number(d, 'f', 2).rightJustified(7, '.');    // r == "...3.14"