Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.05.2009, 17:10   #1
megaten
Пользователь
 
Регистрация: 16.05.2009
Сообщений: 13
По умолчанию Сообщение об ошибке при вводе неверного типа информации в DBEdit

День добрый,
Есть DBedit, который ссылается на поле в таблице Access, в которой тип данных - дата. Как сделать так, чтобы при вводе в этот "едит" неверного типа данных(текст там, просто цифры) выдавалось предупреждение?
Заранее спасибо
megaten вне форума Ответить с цитированием
Старый 17.05.2009, 18:40   #2
ArtInt
Форумчанин
 
Аватар для ArtInt
 
Регистрация: 06.03.2009
Сообщений: 583
По умолчанию

Просто используй конструкцию try except on end.
Вот например:
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
 k: Integer;
begin
 try
  k:=strtoint(Edit1.text);
 except
   on e: Exception do
    // Application.HandleException(Sender);
    showmessage('ошибка');
 end;
end;
Можешь это на onChange DBEdit поставить, зависит от того где может выскочить ошибка.
Не стыдно чего-то не знать, стыдно не стремиться к знаниям.
ArtInt вне форума Ответить с цитированием
Старый 17.05.2009, 18:51   #3
megaten
Пользователь
 
Регистрация: 16.05.2009
Сообщений: 13
По умолчанию

Моя ошибка, все отлично работает
Большое спасибо

Да и еще вопрос, как в Delphi можно реализовать маски ввода, для тех же самых дат?

Последний раз редактировалось megaten; 17.05.2009 в 19:36.
megaten вне форума Ответить с цитированием
Старый 17.05.2009, 19:46   #4
ArtInt
Форумчанин
 
Аватар для ArtInt
 
Регистрация: 06.03.2009
Сообщений: 583
По умолчанию

Цитата:
Сообщение от megaten Посмотреть сообщение
Моя ошибка, все отлично работает
Большое спасибо

Да и еще вопрос, как в Delphi можно реализовать маски ввода, для тех же самых дат?
Для этого есть компонент MaskEdit палитра Additional, там выбираешь свойство EditMask и выбираешь или редактируешь маску ввода.
Не стыдно чего-то не знать, стыдно не стремиться к знаниям.
ArtInt вне форума Ответить с цитированием
Старый 17.05.2009, 19:53   #5
megaten
Пользователь
 
Регистрация: 16.05.2009
Сообщений: 13
По умолчанию

Понятно, а как МаскЕдит связать с ДБЕдитом?
Всмысле МаскЕдит же не связывается с БД

Да, и как можно исключить точку из перечня, вызывающих сообщение в коде наверху? А то из-за того, что в датах есть точки постоянно ошибка выдается

Последний раз редактировалось megaten; 17.05.2009 в 20:00.
megaten вне форума Ответить с цитированием
Старый 17.05.2009, 20:21   #6
ArtInt
Форумчанин
 
Аватар для ArtInt
 
Регистрация: 06.03.2009
Сообщений: 583
По умолчанию

Код:
 if not DBedit1.IsMasked then
  DbEdit1.Field.EditMask:='!99/99/00;1;_';
DBEdit тоже поддерживает маски, просто обращение другое, по исходнику посмотрел. Тогда если маску использовать, то наверное сообщение об ошибке можно даже не выводить так как все равно не допустит неправильных значений.
Не стыдно чего-то не знать, стыдно не стремиться к знаниям.

Последний раз редактировалось ArtInt; 17.05.2009 в 20:30.
ArtInt вне форума Ответить с цитированием
Старый 17.05.2009, 20:44   #7
megaten
Пользователь
 
Регистрация: 16.05.2009
Сообщений: 13
По умолчанию

Здорово, все получилось. Большое спасибо.
megaten вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как вывести сообщение типа "внимание" при удалении записи из БД Alex_Sokolov Помощь студентам 7 06.01.2009 13:50
сообщение об ошибке ntdll.dll trech85 Общие вопросы Delphi 4 12.12.2008 14:29
Выдать сообщение об ошибке Detka Общие вопросы Delphi 17 10.07.2008 15:06
Как убрать сообщение об ошибке? AngelOfDeath Работа с сетью в Delphi 2 01.05.2008 11:44
Перехватить сообщение об ошибке Insainer Общие вопросы Delphi 5 25.04.2008 20:39