每次我使用raise Exception.create('...');
时,它都会显示与Delphi不同的方框:
[my message]
Press OK to ignore and risk data corruption.
Press Cancel to kill the program.
我只是想更改此默认消息并仅保留我的部分。
有人知道我该怎么办?
答案 0 :(得分:2)
要配置我自己的异常消息,我执行了以下操作:
在应用程序主窗体的私有声明中:
procedure onExcept(sender: TObject; e: Exception);
在主窗体的OnCreate事件中:
procedure TfrmMain.formCreate(sender: TObject);
begin
application.onException := @onExcept;
end;
procedure TfrmMain.onExcept(sender: TObject; e: Exception);
begin
//...
end;
重要的是要注意,如果您使用Lazarus,则需要@运算符。如果我没有把它,编译器会将onExcept
视为函数调用。 Delphi在内部添加它,因此您不必担心它。
如果您想更改此行为,请使用{$mode Delphi}
代替{$mode ObjFPC}
指令。