Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.08.12;
Скачать: [xml.tar.bz2];

Вниз

Проверка значений в DBGrid e   Найти похожие ветки 

 
Genry   (2002-07-23 15:21) [0]

Здравствуйте господа. Вопрос возможно чайнический: при вводе неверного значения в поле DBGrid"a (Тип поля ftDate) и смене фокуса появляется сообщение EConvertError "х is not valid date".
Также при переходе на новую колонку, если не заполнены обязательные поля, появляется EDatabaseError "Field x must have a value".
Как перехватить эти исключения и где можно встроить свою проверку значения поля до проверки основным обработчиком?
Хочется общаться с пользователем по-русски.
Спасибо.


 
Johnmen   (2002-07-23 15:29) [1]

Посмотри события связанные с TField.
(Поля в списке FieldEditor"а)


 
Genry   (2002-07-23 15:35) [2]

Если Вы имеете в виду событие TField.OnValidate, то оно происходит непосредственно перед записью значения fild-a в базу. А исключения, которые я описал происходят раньше.


 
XanderMan   (2002-07-23 15:42) [3]

Можно попробовать поставить обработчик на событие OnColExit и в нем проверять правильность введенных значений


VCL Reference
TDBGrid events

Occurs just before a cell in the grid loses input focus.

property OnColExit: TNotifyEvent;


 
Johnmen   (2002-07-23 15:42) [4]

Лично я предпочитаю обрабатывать OnSetText.


 
Lusha   (2002-07-23 15:44) [5]

>Genry (23.07.02 15:21)
Хочется общаться с пользователем по-русски.
Смотрите исходники dbconsts.pas... Константу SFieldRequired например... Поищите руссифицированный вариант этого файла, если самому переводить лень... И все дела... =)


 
Genry   (2002-07-23 15:57) [6]

Спасибо всем. Отдельно - XanderMan. Обнаружил, что если существует обработчик OnColExit, то, при неправильном значении, поле просто очищается и исключения не возникает.
Спасибо!


 
Johnmen   (2002-07-23 16:06) [7]

>Genry (23.07.02 15:57)

А если происходит вертикальное перемещение ??? Ведь тогда OnColExit не вызывается !
И что ты будешь делать ?
:o)




Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2002.08.12;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.008 c
1-35242
Poirot
2002-07-30 21:10
2002.08.12
Перерисовка формы методами из компонента от TComponent


1-35376
Aleksandr
2002-07-30 17:47
2002.08.12
Люди, что случилось с модулем classes?


4-35495
pantera
2002-06-04 08:45
2002.08.12
Win API


3-35146
RDA
2002-07-22 09:25
2002.08.12
Прикол с паролем к базе Firebird


1-35257
^SANYA
2002-07-31 11:04
2002.08.12
StringGrid or Ini?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский