Название: Универсальный QLineEdit Отправлено: NetWorm от Август 29, 2012, 10:58 Пишу щас пользовательский виджет... Вобщем ситуация такая. Есть например свойство в Едита typeEdit. В зависимости от которого у нас например появляется рядом кнопка при нажатии на которую появляется календарь, соответственно Едиту накладывается маска для ввода даты. Для ввода обычных чисел использую QIntValidator. Выставляю длинну и прочее в свойствах...
Собственно вопрос. Необходимо сделать ввод Double числа. Прием если стоит ограничение 10.2 т.е. 10 целой части и 2 дробной части. Каким образом, не использую маску ввода, реализовать ввод такого числа. Что то вроде как это реализовано в SpinBox Название: Re: Универсальный QLineEdit Отправлено: _OLEGator_ от Август 29, 2012, 11:10 А чем QDoubleValidator и QRegExpValidator не подходит?
Не понятно, что надо. Название: Re: Универсальный QLineEdit Отправлено: NetWorm от Август 29, 2012, 11:15 QDoubleValidator - вроде бы именно то что нужно, но он позволяет вводить сколько угодно символов целой части, и еще хотелось бы чтобы ввод был такой же как в SpinBox
Название: Re: Универсальный QLineEdit Отправлено: GreatSnake от Август 29, 2012, 11:18 Код
Название: Re: Универсальный QLineEdit Отправлено: NetWorm от Август 29, 2012, 11:20 Это понятно! Но он ограничивает только дробную часть, целую могу вводить сколько угодно... И еще ставятся запятые
Название: Re: Универсальный QLineEdit Отправлено: NetWorm от Август 29, 2012, 12:01 Ну я так понял проще всего тут использовать класс QWidget а уже в зависимости от свойств создавать либо LineEdit либо QSpinBox
Название: Re: Универсальный QLineEdit Отправлено: _OLEGator_ от Август 29, 2012, 12:25 Привет велосипедоизобретателям.
Странно, но QDoubleValidator не работает должным образом. В общем QRegExpValidator в помощь. Название: Re: Универсальный QLineEdit Отправлено: NetWorm от Август 29, 2012, 12:29 Не работает оно все так как надо!!! Если можно приведите примерчик!!
Название: Re: Универсальный QLineEdit Отправлено: Igors от Август 29, 2012, 12:36 Не работает оно все так как надо!!! Если можно приведите примерчик!! Опять эта тема. Работает, то Вы не разобралисьhttp://www.prog.org.ru/index.php?topic=22600.msg159044#msg159044 (http://www.prog.org.ru/index.php?topic=22600.msg159044#msg159044) Название: Re: Универсальный QLineEdit Отправлено: NetWorm от Август 29, 2012, 13:50 Блин да не то это! Количество целых чисел можно ввести сколько угодно, но не больше чем указано... В данном случае 3.2 т.е. например 124.25 причем можно внести 4.25... Вот так надо но уже 1234.56 - ввести нельзя.
Название: Re: Универсальный QLineEdit Отправлено: _OLEGator_ от Август 29, 2012, 13:53 Почитай про регулярные выражения.
Название: Re: Универсальный QLineEdit Отправлено: Igors от Август 29, 2012, 14:11 Блин да не то это! Количество целых чисел можно ввести сколько угодно, но не больше чем указано... В данном случае 3.2 т.е. например 124.25 причем можно внести 4.25... Вот так надо но уже 1234.56 - ввести нельзя. А Вас не смущает что "баг" в QDoubleValidator что-то уж слишком очевиден? :) Вы можете унаследоваться от QDoubleValidator и запретить ввод "больших", делов на неск минут. Но учтите что так Вы лишаете пользователя возможности забить введенную точку, что может его не устроить.Название: Re: Универсальный QLineEdit Отправлено: NetWorm от Август 30, 2012, 06:57 Понятно, короче готового решения я так понимаю нет! Чтож будем писать самостоятельно то что нужно!!!
|