Название: Запрет на ввод определенных символов Отправлено: kadr от Июль 28, 2009, 20:32 Привет все, у меня есть вопрос, подскажите как в QT сделать так что бы в строку LineEdit можно было вводить только определенные символы, например только цифры, а буквы не вводились! ???
Название: Re: Запрет на ввод определенных символов Отправлено: Rcus от Июль 28, 2009, 20:38 #include <QtGui/QValidator>
#include <QtGui/QIntValidator> #include <Assistant/QValidator> //thread Название: Re: Запрет на ввод определенных символов Отправлено: kadr от Июль 28, 2009, 20:55 И что это означает, зачем мне это подключать? ???
Название: Re: Запрет на ввод определенных символов Отправлено: BRE от Июль 28, 2009, 20:57 И что это означает, зачем мне это подключать? ??? Почитай в assistant про QValidator. ;)... и глянь еще на QLineEdit::setInputMask( const QString & inputMask ). Название: Re: Запрет на ввод определенных символов Отправлено: kadr от Июль 28, 2009, 21:24 Почитал справну, очень мало информации, ни примеров ничего что бы могло понять как этот валидатор использовать, может если кто использовал сбросит кусочик кода, я посмотрю, на примере понятнее будет!
Название: Re: Запрет на ввод определенных символов Отправлено: BRE от Июль 28, 2009, 21:25 Почитал справну, очень мало информации, ни примеров ничего что бы могло понять как этот валидатор использовать, может если кто использовал сбросит кусочик кода, я посмотрю, на примере понятнее будет! Line Edits Example Название: Re: Запрет на ввод определенных символов Отправлено: Rcus от Июль 28, 2009, 21:31 Вы читали документацию по QValidator? Там все настолько подробно расписано... и ссылка на пример есть, там кода достаточно
/* Удивляюсь порой, может у меня магический ассистант - в столько всего, разве что нет ответов на вопросы типа почему в qpaintengine_x11.cpp закоментирована строка features |= QPaintEngine::LinearGradient;*/ Название: Re: Запрет на ввод определенных символов Отправлено: kadr от Июль 28, 2009, 22:10 Пишу значит setInputMask("9999999") а он мне не позволяет вводить сразу 7 символов, сначало вводит первый символ от 0 до 9, буквы запрещает вводить, потом надо нажать на клаве стрелку вправо, курсор переходит на след позицию, только вводишь след цифру, она сразу перескакивает на первую позицию, и опять надо уже нажимать стрелку 2 раза вправо, и снова такая же фигня повторяется, что это глюк или так и должно быть? ???
Название: Re: Запрет на ввод определенных символов Отправлено: _OLEGator_ от Июль 28, 2009, 22:15 Если не ошибаюсь, для установки ввода только цифр:
Код setInputMask - это маска ввода, если например надо сразу установить "-" при вводе даты, читай внимательнее документацию... Название: Re: Запрет на ввод определенных символов Отправлено: kadr от Июль 28, 2009, 22:29 Если не ошибаюсь, для установки ввода только цифр: Это не работает, пишет что не может найти функции для обработки, ладно впринципе я с setInputMask разобрался, я просто его не туда поставил, сейчас вроде нормуль работает! Спасибо за помощь! ;)Код setInputMask - это маска ввода, если например надо сразу установить "-" при вводе даты, читай внимательнее документацию... Название: Re: Запрет на ввод определенных символов Отправлено: BRE от Июль 28, 2009, 22:34 Это не работает, пишет что не может найти функции для обработки, ладно впринципе я с setInputMask разобрался, я просто его не туда поставил, сейчас вроде нормуль работает! Спасибо за помощь! ;) Просто new был пропущен:Код :) Название: Re: Запрет на ввод определенных символов Отправлено: _OLEGator_ от Июль 28, 2009, 22:42 kadr: еще раз - читай документацию и читай внимательно, пропуск new уже вызывает большие непонятки, достаточно глянуть на ошибку и в доку...
И то что работает, а как работает - непонятно, не есть выход :) Лучше один раз потратить в ремя и разобраться, чем потом использовать то, что непонятно как работает Название: Re: Запрет на ввод определенных символов Отправлено: SASA от Июль 29, 2009, 14:44 /* Удивляюсь порой, может у меня магический ассистант - в столько всего, разве что нет ответов на вопросы типа почему в qpaintengine_x11.cpp закоментирована строка features |= QPaintEngine::LinearGradient;*/ ;D ;D ;D ;D ;D ;D ;D ;D ;D ;D ;D ;D ;D ;D |