一名为dbeDate的TDBEdit对应于表中的一名为DATE的字段。
插入数据时,往dbeDate中写入数据。如果写入的数据不能够转换成DATETIME类型,则当聚焦离开dbeDate时,就会报ConvertError异常,请问怎样才能捕捉这个异常?怎样才能很好地解决这样的问题?
=========
谢谢!
插入数据时,往dbeDate中写入数据。如果写入的数据不能够转换成DATETIME类型,则当聚焦离开dbeDate时,就会报ConvertError异常,请问怎样才能捕捉这个异常?怎样才能很好地解决这样的问题?
=========
谢谢!
//your code...
except
on EConvertError do
begin
//handle the exception...
end;
end;
procedure TForm1.ADOQuery1EditError(DataSet: TDataSet; E: EDatabaseError;
var Action: TDataAction);
begin
if E.message='某个特定的错误' then
begin
showmessage('格式不兼容');
Action:=daAbort; //放弃操作
end;
end;
同样,还有ondeleteerror,onposterror等方法。
这我当然知道,但就是不知道应该在哪里捕捉。
to ndujun(小军):
在这里不行,还没有运行到这个事件,异常就已经抛出了。
不行!还没有运行到TDBEdit的onexit这个事件,异常就已经抛出了。
至于datatime类型,edit控件on exit时候就能验证合法性了。