Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.11.11;
Скачать: CL | DM;

Вниз

Подскажите как отловаить исключение   Найти похожие ветки 

 
Алексей Коптенков   (2002-10-31 13:33) [0]

На пустую форму киньте кнопку и MaskEdit, последний отредактируйте на ввод времени, скомпильте и запустите приложение. Введите в поле к примеру _4.__.4_ выскачит исключение EDBEditError.
Мне нужно поймать это исключение и вывести другой диалог.
Куда ловушку ставить даже и не знаю.


 
REP   (2002-10-31 15:03) [1]

Если маска типа !90:00:00;1;_, то ты должен ввести все цифры, где стоят 0.
Замени все 0 на 9 - это означает, что можно вводить или не вводить цифру.
И отрабатывай по выходе из MaskEdit"a:
Function ValidTime(_Time:String):Boolean;
Var
tmp:TTime;
begin
Try
tmp:=StrToTime(_Time);
Result:=True;
Except
//ShowMessage("Не то время!!!");
Result:=False;

end;


 
Zemal ©   (2002-10-31 16:42) [2]

try
TmpTime := StrToTime(EDBEdit1.Text);
except
on E:EDBEditError do
begin
... // действия при возникновении исключительной ситуации
ShowMessage("Возникло исключение: "+E.Message);
end;
end;

Поставь подобный код в событие типа OnEnter своего DBEdit-а... увидишь сам чего получится :).


 
Zemal ©   (2002-10-31 16:44) [3]

P.S. Забыл сказать... объяви переменную TmpTime : TTime; (как в верхнем примере).


 
Алексей Коптенков   (2002-10-31 17:02) [4]

Большое спасибо


 
pusrg ©   (2002-10-31 17:51) [5]

To Zemal
Кстати переменную TmpTime можно не обьявлять :), если результат ф-ции StrToTime далее не используется.
компилятор спокойно схавает конструкцию
StrToTime(_Time);

Честно говоря, довольно "геморойный", этот компонент TMaskEdit :(
Я предпочитаю использовать обычный TEdit, и обрабатывать события OnKeyPress и OnExit с проверкой на ввод только нужных символов времени.


 
Zemal ©   (2002-10-31 18:24) [6]

>> pusrg
Совершенно верно! Молодчик! Кстати, я тоже использую простой TEdit... согласен полностью... с маской ввода геморой :(. Я вообще предпочитаю писать свои компоненты... ну типа потомка TEdit с проверкой ввода каждого символа :)... так больше уверенности в содеяном :). Ещё раз спасибо за поправку. Удачи! :)


 
evgeg ©   (2002-10-31 23:07) [7]

отловаить -- шедевр.



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

Текущий архив: 2002.11.11;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.023 c
6-34141
demisen
2002-09-13 17:42
2002.11.11
TWebBrowser - Source


1-34048
oomneeq
2002-10-29 18:38
2002.11.11
Как среагировать на (гор) прокрутку TMemo ...


1-33962
Tea_pot
2002-11-01 12:28
2002.11.11
Пишу games mahgong, и пытаюсь загрузить много Bitmap-ов в память


1-34049
pas_andry
2002-10-30 18:05
2002.11.11
Как в TListView узнать отмеченные записи


1-34085
}{unter
2002-10-30 17:11
2002.11.11
Если кто занимался картографией