我用的是DbEdit组件,对应的字段的类型时DateTime,我想在用户输入完后检查所输入的格式是否正确(会自动检查,但出现错误是会产生EConvertError),如果不是则进行异常处理-提示重新输入。我的代码是
procedure TEditusers.DBEdit5Exit(Sender: TObject);
begin
try
except
on EConvertError do
ShowMessage('你输入的日期格式不对。请你按"年-月-日"(如:2000-01-01)格式重新输入');
end;
end;可是还是达不到预期的功能。
请问当焦点移开时触发DbEdit的什么事件?望各位指点指点。谢谢
procedure TEditusers.DBEdit5Exit(Sender: TObject);
begin
try
except
on EConvertError do
ShowMessage('你输入的日期格式不对。请你按"年-月-日"(如:2000-01-01)格式重新输入');
end;
end;可是还是达不到预期的功能。
请问当焦点移开时触发DbEdit的什么事件?望各位指点指点。谢谢
我个人认为最好不要用什么DBEdit组件
用Edit组件,自己控制,这样多好!
procedure TForm1.DateTimePicker1Change(Sender: TObject);
begin
TABLE1.Edit;
TABLE1['DATAFIELD']:=DATETIMEPICKER1.Date;
TABLE1.Post;
end;
这样做看能不能达到你的要求。
procedure TForm1.DBEdit1Exit(Sender: TObject);
begin
if 不符合你要求的格式 then
begin
DBEdit1.SetFocus;
//或者ShowMessage('你输入的日期格式不对。请你按"年-月-日"(如:2000-01-01)格式重新输入');
end;
end;