Модель обработки событий ActionScript 3.0

ActionScript 3.0 представляет единую модель обработки событий, которая заменяет различные механизмы обработки событий, существовавшие в предыдущих версиях ActionScript. Новая модель событий основана на спецификации событий из объектной модели документа (DOM) третьего уровня.

Для разработчиков, имеющих опыт использования метода addListener() в ActionScript 2.0, может оказаться полезным указать на различия между моделью прослушивателя событий ActionScript 2.0 и моделью событий ActionScript 3.0. В следующем списке приведены основные различия двух моделей событий:

  • Для добавления прослушивателей событий в ActionScript 2.0 в некоторых случаях используется метод addListener() , а в других метод addEventListener() , тогда как в ActionScript 3.0 во всех случаях используется метод addEventListener() .

  • В ActionScript 2.0 отсутствует поток событий, поэтому метод addListener() можно вызвать только для объекта, который рассылает событие, тогда как в ActionScript 3.0 метод addEventListener() можно вызвать для любого объекта, который является участником потока событий.

  • В ActionScript 2.0 в качестве прослушивателей событий могут выступать функции, методы или объекты, тогда как в ActionScript 3.0 прослушивателями событий могут быть только функции или методы.

  • Синтаксис on( event ) не поддерживается в ActionScript 3.0, поэтому к фрагменту ролика нельзя прикрепить код события ActionScript. Добавить прослушиватель событий можно только при помощи метода addEventListener() .

    Следующий пример, который прослушивает событие MouseEvent.CLICK для компонента Button с именем aButton , иллюстрирует основную модель обработки событий в ActionScript 3.0:

    aButton.addEventListener(MouseEvent.CLICK, clickHandler); 
    function clickHandler(event:MouseEvent):void { 
    trace("clickHandler detected an event of type: " + event.type);  
    trace("the event occurred on: " + event.target.name);  
    }

    Дополнительные сведения об обработке событий в ActionScript 3.0 см. в руководстве Программирование на ActionScript 3.0 . Дополнительные сведения по обработке событий компонентов в ActionScript 3.0 см. в разделе « Обработка событий ».