Вывести конечные нули в QString - PullRequest
5 голосов
/ 20 мая 2009

Я использую Qt и хочу напечатать значение данных (double) в метке; однако завершающие нули отсекаются. Я знаю, что в C я могу использовать printf ("% 0.1f", данные) для сохранения конечных нулей.

Я посмотрел на функцию arg в QString, но она позволяет устанавливать только общую ширину поля. setNum и number позволяют устанавливать точность, но это также не так.

Пример кода:

double data = 1.0;
label->setText( QString().number( data );

Ответы [ 2 ]

6 голосов
/ 20 мая 2009

Посмотрите на статическую функцию QString::number() с аргументами формата и точности.

QString QString::number( double n, char format = 'g', int precision = 6 )

Ссылка: http://doc.qtsoftware.com/4.5/qstring.html#number-2

3 голосов
/ 02 февраля 2012

Почему бы не использовать QString :: sprintf ()?

QString().sprintf("%08d + rest of the string", 7);
...