| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Базы данных и репортинг > Проверка ввода в DBGrid |
| Автор: Ale}{y 29.3.2005, 07:47 |
| Help me please!!! БД - Paradox, компоненты - Table, DBGrid Как осуществить проверку правильности ввода в определенных полях таблицы. Например, в поле "Фамилия" - разрешить ввод только русских букв и тире, в поле "год рождения" - разрешить ввод только цифр. В компоненте TEdit все понятно - событие OnKeyPress, а вот как быть с DBGrid??? |
| Автор: DimW 29.3.2005, 10:01 | ||
Все оказалось довольно просто:
в поле под номером 1 будет разрешать ввод цифр и BackSpace... |
| Автор: Guest 29.3.2005, 10:10 | ||||
Действительно, просто,но почему-то не работает... |
| Автор: DimW 29.3.2005, 10:37 |
| Вот блин у меня работает, а утебя нет.... проблема может быть в том что SelectedField.FieldNo возвращает не то значение которое ты ожидаешь. я тоже думал что в гриде второе поле имеет индекс 1, а оказалось что 5. это из за того что некоторые поля у меня visible:=false. навернека у тыбя тоже самое... |
| Автор: Guest 29.3.2005, 10:40 | ||
Точняк! Ура!!! Спасибо!!! Млин, иногда с собственной тупости поражаюсь просто! |
| Автор: Pseex 20.12.2008, 00:23 | ||||||||
Парни, я запарился решать похожую проблему, где в поле можно было бы вводить не только положительные числа, но и отрицательные (использую Rx компоненты):
однако, возникает проблема проверки корректности конечного числа, так как можно ввести несколько символов "-", решил так:
и всё бы классно, однако только если ввести в поле значение и переместиться на соседнее поле клавишами управление (вверх,ввниз и т.п.), НО если ввести значение в поле и "ткнуться" мышою куданить в другую ячейку - возникает исключение, с которым не знаю как бороться...пока вижу вариант блокировать мыху, если что-то ввожу в поле, но это както... |
| Автор: Pseex 20.12.2008, 12:04 | ||
Вроде получилось, значится, ADOTable1 подключена к таблице из двух полей: первое - счётчик, второе - стринговое. Чтоб в стринговое поле записывалось как положительное так и отрицательное значение:
ну и дальше StrToInt из таблицы и делаю всё остальное.. |