Советы по Delphi

         

Как обработать ошибку предже, чем программа уведомит об этом пользователя?


Для фильтрации, к примеру, EConvertError, вы можете создать собственный обработчик исключений:

Приблизительно так:

Объявите следующую процедуру в объекте вашей главной формы:

    procedure MyException(Sender:TObject; E:Exception);

Затем делайте так:

   

procedure TMyForm.MyException(Sender:TObject; E:Exception);
begin
if
(E.ClassType.ClassName='EConvertError') then begin {как-то общаемся с пользователем по-поводу ошибки} end else Application.ShowException(E); {позволяем Delphi показать ошибку} end;

Наконец, позвольте приложению воспользоваться вашим новым обработчиком исключений:

    procedure TMyForm.FormCreate(Sender: TObject);
begin
Application.OnException := MyException; end;

[001670]



Содержание раздела