中文异常处理?(80分)

  • 主题发起人 主题发起人 cjhchina
  • 开始时间 开始时间
C

cjhchina

Unregistered / Unconfirmed
GUEST, unregistred user!
例如在文本框中输入不规则的数字,会出现'123' is not a valid date and time,这样界面很不友好,请问怎样汉化?
 
try
.....
except
//你自定的错误提示
end;
 
在文本框的OnExit事件里处理一下:
procedure TForm1.Edit1Exit(Sender: TObject);
var temp : integer;
begin
try
temp := strtoint((Sender as TEdit).Text);
except
showmessage('你输入的数值非法!');
(Sender as TEdit).SetFocus;
end;
end;
 
用 pos() 这个函数捕捉错误,然后再showmessage();
 
OnExit事件:
procedure TForm1.Edit1Exit(Sender: TObject);
begin
try
strtodate(Edit1.Text);
except
ShowMessage('你输入的数值非法!');
Edit1.SetFocus;
end;
end;
 
在文本框的OnExit事件里处理一下:
procedure TForm1.Edit1Exit(Sender: TObject);
var temp : integer;
begin
try
temp := strtoint((Sender as TEdit).Text);
except
showmessage('你输入的数值非法!');
(Sender as TEdit).SetFocus;
end;
end;
这种方法只能起到一定的作用,如strtodate((Sender as TEdit).Text);,我输入错误时,不想输入日期了(NULL),就一直执行
showmessage('你输入的数值非法!');
(Sender as TEdit).SetFocus;
 
真要输入日期的话,用下拉组合框岂不是更好?
 
建议对Delphi的一些常用资源单元进行汉化,一劳永逸。网上可以找到。需要的话,我可以寄给你(D7)。
 
1。在onkeypress事件写代码 , 判断 key 是否合法 ,非法则key:+#0; 。。 :)
2。来自:jianguobu, 时间:2004-4-20 20:53:28, ID:2570843
try
.....
except
//你自定的错误提示
end;
结合后就完事大吉了。。 :)
 
kaida 老兄,烦请给寄一份汉化的资源单元给我,谢谢!!! lcglzw@tom.com
 
后退
顶部