Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: Evgeniya от Март 04, 2010, 14:42



Название: Ограничение на ввод максимального значения в спин боксе
Отправлено: Evgeniya от Март 04, 2010, 14:42
Доброго времени суток!!!Есть такой вопросик...Ставлю максимальное значение для DoubleSpinBox 10000000000.00, но все-равно больше чем 9999999999 я ввести не могу,а если ввести еще и 9999999999.11,то число округлится...Неужели есть ограничение на ввод максимального значения в спин боксе??


Название: Re: Ограничение на ввод максимального значения в спин боксе
Отправлено: lit-uriy от Март 04, 2010, 15:57
посмотри ещё на свойство "decimals"


Название: Re: Ограничение на ввод максимального значения в спин боксе
Отправлено: Akaiten от Март 04, 2010, 16:29
Действительно в Qt Designer'e можно ввести максимальное число 2147483647, что соответствует 2^31-1 или INT_MAX. Через QDoubleSpinBox::setMaximum() и QDoubleSpinBox::setValue() можно установить большие значения, и пользователь сможет их вводить.


Название: Re: Ограничение на ввод максимального значения в спин боксе
Отправлено: Evgeniya от Март 04, 2010, 17:00
Я и использую эти свойства
Код
C++ (Qt)
QDoubleSpinBox *editor=new QDoubleSpinBox(parent);
    editor->setMinimum(0.0);
    editor->setMaximum(10000000000.00);
    editor->setDecimals(2);
    editor->setSingleStep(1);
 

но больше чем 9999999999 я ввести не могу... а если ввожу,напр. 1111111111,99,это значение сохраняется в базе нормально,а отображается округленным 1111111112


Название: Re: Ограничение на ввод максимального значения в спин боксе
Отправлено: lit-uriy от Март 04, 2010, 17:10
>>а отображается округленным 1111111112
скорее всего виноват в этом не виджет (QDoubleSpinBox), а тот кто эти значения ему поставляет.


Название: Re: Ограничение на ввод максимального значения в спин боксе
Отправлено: Akaiten от Март 04, 2010, 17:16
Я и использую эти свойства
Код
C++ (Qt)
QDoubleSpinBox *editor=new QDoubleSpinBox(parent);
    editor->setMinimum(0.0);
    editor->setMaximum(10000000000.00);
    editor->setDecimals(2);
    editor->setSingleStep(1);
 

но больше чем 9999999999 я ввести не могу...

Qt 4.6.2. Значение 10000000000 (10 нулей) вводится прекрасно как и должно быть и > 999999999 (девять 9)