Название: Маска ввода и контроль значения для QLineEdit (Qt 4.6.0) Отправлено: ymb от Февраль 15, 2010, 09:27 Код:
ui->Edit1->setValidator(new QDoubleValidator(0, 90.0, 1, ui->Edit1)); ui->Edit1->setInputMask("#0.0"); После ввода с клавиатуры всех 3-х цифр не работают клавиши "BackSpace" и "Delete". Изменить введённые цифры можно только перемещением клавишами со стрелками. Если ввести только 2 цифры, то клавиша "BackSpace" работает. Так и должно быть? Или можно как-то это изменить? То , что не работает ограничение на значение, об этом я уже прочитал на форуме. Зачем тогда его вводить? Название: Re: Маска ввода и контроль значения для QLineEdit (Qt 4.6.0) Отправлено: ymb от Февраль 15, 2010, 13:25 Если убрать строку ui->Edit1->setValidator(new QDoubleValidator(0, 90.0, 1, ui->Edit1));
и оставить только ui->Edit1->setInputMask("#0.0"); то клавиши "BackSpace" и "Delete" работают. Название: Re: Маска ввода и контроль значения для QLineEdit (Qt 4.6.0) Отправлено: crossly от Февраль 15, 2010, 13:38 а зачем одновременно inputmask и валидатор??
Название: Re: Маска ввода и контроль значения для QLineEdit (Qt 4.6.0) Отправлено: ymb от Февраль 15, 2010, 18:36 Валидатор для проверки значения. А маску для формата.
Если оставить только валидатор, то он ограничивает ввод букв. число можно вводить любое. Значение не проверяется. Лучше тогда оставить только маску и проверку делать либо при выходе из LineEdit, либо когда буду присваивать значение какой-нибудь переменной. Название: Re: Маска ввода и контроль значения для QLineEdit (Qt 4.6.0) Отправлено: bosfor от Июль 27, 2010, 15:40 Если оставить только валидатор, то он ограничивает ввод букв. число можно вводить любое. Значение не проверяется. проверяется ... |