Russian Qt Forum

Qt => Вопросы новичков => Тема начата: Nelkor от Декабрь 29, 2013, 22:42



Название: QLabel->setNum(double);
Отправлено: Nelkor от Декабрь 29, 2013, 22:42
Собственно, излагаю проблему - у меня на форме есть QLabel объект. На этот label в ходе выполнения программы иногда подаются (setNum) числа в формате double. Но в адекватном виде эти числа отображаются только при их размере до шести разрядов включительно (хотя места на виджете хватает на разрядов 12+). Вот пример отображения:

Число (6 разрядов) 111111 - отображается: 111111

Число (7 разрядов) 1111111 - отображается: 1.11111е+06

Свободного места на label'e полно! А нормально отображаться не хочет. Перерыл все настройки label, не нашел бы ничего, что могло бы мне помочь. Вот у QLCDNumber там есть такой метод, как задание количество ячеек под символы, но мне желательно использовать именно label. Спасибо.


Название: Re: QLabel->setNum(double);
Отправлено: kambala от Декабрь 29, 2013, 22:49
попробуй формировать строку через QString с явным указанием числа разрядов


Название: Re: QLabel->setNum(double);
Отправлено: Nelkor от Декабрь 29, 2013, 22:51
Написано так, как будто это действительно может помочь... Я как раз и ищу способ "явно указать число разрядов". Так как же это можно сделать?


Название: Re: QLabel->setNum(double);
Отправлено: VPS от Декабрь 30, 2013, 00:03
Написано так, как будто это действительно может помочь...

kambala как раз и написал где искать. И если бы Вы по-хорошему посмотрели документацию по QString, то нашли бы решение довольно быстро! ;)


Название: Re: QLabel->setNum(double);
Отправлено: Bepec от Декабрь 30, 2013, 06:54
QString::number посмотрите для типа double. И учитесь искать информацию :)