Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Маска ввода [D7, XP]


Mery ©   (2008-10-21 07:50:00) 

Здравствуйте!
Моя проблема в следующем: для компонента DBEdit использую маску ввода (точнее для поля F1, связь с которым через DBEdit1, прописываю EditMask 000\-000\-000\ 00;1;_). При этом, если пользователь используя кнопку delete или backspace очищает данные в этом поле, то выдаётся сообщение:Invalid input value. Use escape kay to abandon changes. Т.е. сброс данных в этом поле только кнопкой Esсkape. Но это не удобно. Хотелось бы знать, каким образом можно эту проблему обойти? И каким образом вы задаёте маску ввода для поля.


Mery   (2008-10-22 07:17:00) [1]

>Берёшь обычный TEdit
хорошо.
но нужно, чтобы в Tedit уже сояла маска для ввода: например, чтобы в нем по умолчанию перед заполнением уже 3 и 6 символ был, к примеру, тире.
Если в этом случае использовать TMaskEdit, то проблема освящённая в моём вопросе остаётся той же:опять Esckape и неудобства при очистке данных.


Anatoly Podgoretsky   (2008-10-21 15:32:00) [2]

> clickmaker  (21.10.2008 13:54:03)  [3]

Это красиво, особенно когда нет кнопки выхода (Cancel) из диалога/формы.


clickmaker   (2008-10-21 13:54:00) [3]

можно и DBEdit, а проверку делать в TField.OnValidate


Ega23   (2008-10-21 09:59:00) [4]


> И каким образом вы задаёте маску ввода для поля.


Берёшь обычный TEdit, а потом проверяешь, правильно введено значение, или нет. Неправильно - сообщаешь пользователю об этом и ставишь фокус на нём. Правильно - пишешь в БД.

Только так.


Anatoly Podgoretsky   (2008-10-21 09:38:00) [5]

> Mery  (21.10.2008 7:50:00)  [0]

Очень просто, убираю маску, с текущей реализацией масок работать неудобно.


Наверх

Титульная страница Поиск, карта сайта Написать письмо