Учебник по Delphi 4

       

Разделяемые обработчики событий



Как вы уже знаете, каждый класс способен генерировать свои собственные события. Каждое из них имеет определенный тип, как, например, TNotifyEvent у OnClick и TCloseEvent у OnClose. Delphi позволяет написать один обработчик события и назначить его нескольким событиям одновременно.


    Представьте себе объект TEdit, генерирующий события OnKeyDown и OnKeyUp. Поскольку оба события — одного типа, можете написать одну процедуру и назначить ее обоим событиям. Процедура будет вызываться дважды при каждом нажатии клавиши (при нажатии и отпускании). Или, например, вы можете создать один обработчик для событий OnCreate и OnClick.


    Еще одно общее назначение разделяемых обработчиков — обработка событий от двух различных управляющих элементов, которые могут и не быть экземплярами одного класса.


    Вот как создать разделяемый между классами TButton и TEdit обработчик OnClick.

Выберите из меню File/New Application для создания приложения.

Поместите TButton в форму и введите в обработчик OnClick следующий код.

        procedure TFormI.ButtonlClick (Sender: TObject);
        begin
            Editl.SetFocus;
            Editl.SelectAll;
        end;

Поместите TEdit в форму. В Object Inspector выберите в списке для события OnClick обработчик ButtonClick.

    Теперь после щелчка на кнопке и на объекте TEdit будут выполняться одни и те же действия,

фокус ввода будет передаваться управляющему элементу TEdit,

и весь текст в нем будет выделяться.



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