这个异常是在onexit之前就发生的,可以通过修改它的OnException事件,来实现对特殊异常的控制,具体做法如下:
1在Form1的类中声明一个过程Myexception,该过程与Tapplication的OnException事件有
相同的参数:
public
{ Public declarations }
procedure MyException(Sender:TObject;E:Exception);
2.编写该过程代码:
procedure TForm1.MyException(Sender:TObject;E:Exception);
begin
if E is EDBEditError then showmessage(′输入不符合规则′)
else
Application.ShowException(E); {调用缺省的异常处理}
end;
3.在Form1的OnCreate事件中为Tapplication的OnException事件赋值:
procedure TForm1.FormCreate(Sender: TObject);
begin
Application.OnException :=MyException;
end;
4.存盘并运行程序,在MaskEdit框中随便输入一两个数字,回车,一个中文的提示框将取
代原来的英文提示框。