IDebugListeners.Add

Синтаксис

Add(Listener: IDebugListener);

Параметры

Listener. Элемент, используемый для отслеживания отладочной информации.

Описание

Метод Add осуществляет добавление элемента, используемого для отслеживания отладочной информации.

Пример

Для выполнения примера предполагается наличие формы и расположенных на ней компонентов Button с наименованием «Button1» и Memo с наименованием «Memo1».

Добавьте ссылки на системные сборки: Forms, Collections.   

Class Listener: Object, IDebugListener
    _Mem: IMemo;

    Public Constructor Create(ListMem: IMemo);
    Begin
        _Mem := ListMem;
    End Constructor Create;
    
    Public Sub Fail(Message: String);
    Begin
        _Mem.Lines.Add("Ошибка: " + Message);
    End Sub Fail;
    
    Public Sub Write(Text, Cat: String);
    Begin
        _Mem.Lines.Add("Сообщение: " + Text + " | " + Cat);
    End Sub Write;
End Class Listener;

Class TestForm: Form
    Memo1: Memo;
    Button1: Button;
    List: IDebugListener;

    Sub TestFormOnShow(Sender: Object; Args: IEventArgs);
    Begin
        Memo1.Lines.Clear;
    End Sub TestFormOnShow;
    
    Sub Button1OnClick(Sender: Object; Args: IEventArgs);
    Begin
        List := New Listener.Create(Memo1);
        Debug.Listeners.Add(List);
        Debug.Assert(True);
        Debug.Assert(False);
        Debug.AssertMsg(True"Msg True");
        Debug.AssertMsg(False"Msg False");
        Debug.Fail("MessageError");
        Debug.WriteLine("WriteLine");
        Debug.WriteLineIf(True"Writeline True");
        Debug.WriteLineIf(False"Writeline False");
    End Sub Button1OnClick;
    
    Sub TestFormOnClose(Sender: Object; Args: IEventArgs);
    Begin
        Debug.Listeners.Remove(List);
    End Sub TestFormOnClose;
End Class TestForm;

После выполнения примера при нажатии на кнопку будет создан элемент, используемый для вывода отладочной информации в компонент Memo. Сообщения об ошибках будут выведены с помощью метода IDebug.Fail, остальные - с помощью метода IDebug.Write.

См. также:

IDebugListeners