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

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

Хм... Фильтр [D6, ]


anod ©   (2002-01-10 13:16:00) 

Подскажите как отловить в edit1 если вводятся не числовые значения,а фильтр по числам.
То есть случйно ошибся и знак влепил - а прога сразу выдает ошибку. Что делать? (ошибка вроде EDatabaseError)
Пробовал в
try
....
except
on EDatabaseError do ShowMesage("...");
end;
НЕ помогает.


Fareader   (2002-01-11 09:59:00) [1]

2fnatali - полностью согласен


fnatali   (2002-01-11 06:39:00) [2]

А ещё лучше, наверное, MaskEdit использовать.


anod   (2002-01-11 00:16:00) [3]

Нашел!!
val(Edit1.Text,x,code);
if code=0 then
...
else showmessage("Ашипка!");


anod   (2002-01-10 19:05:00) [4]

Да, message он выдает, а букву-то печатает и выскакивает опять ошибка


anod   (2002-01-10 18:15:00) [5]

Попробую. Спасибо


Fareader   (2002-01-10 15:03:00) [6]

Держи

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
case key of
"0".."9", #8{код Backspace},, #13{код Enter}:;
else showmessage("Ашипка!");
end;

end;

Остальные коды добавишь по вкусу


fnatali   (2002-01-10 13:26:00) [7]

По-моему надо на событие OnKeyPress Edit повесить обработчик кодов нажатых клавиш


Наверх

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