ActionScript 3.0-Ereignisverarbeitungsmodell

Mit ActionScript 3.0 wird ein einziges Ereignisverarbeitungsmodell eingeführt, das die unterschiedlichen Ereignisverarbeitungsmechanismen der ActionScript-Vorgängerversionen ersetzt. Das neue Ereignismodell beruht auf der DOM3-Ereignisspezifikation (Document Object Model Level 3).

Für Entwickler, die bereits Erfahrungen mit der addListener() -Methode in ActionScript 2.0 gesammelt haben, ist eine Übersicht der Unterschiede zwischen dem Ereignis-Listener-Modell von ActionScript 2.0 und dem Ereignismodell von ActionScript 3.0 hilfreich. Im Folgenden sind daher einige der wichtigsten Unterschiede zwischen den beiden Ereignismodellen aufgeführt:

  • Zum Hinzufügen von Ereignis-Listenern in ActionScript 2.0 wird in einigen Fällen addListener() und in anderen addEventListener() verwendet. In ActionScript 3.0 wird in allen Fällen addEventListener() eingesetzt.

  • In ActionScript 2.0 gibt es keinen Ereignisablauf, d. h., die addListener() -Methode kann nur für das Objekt aufgerufen werden, das das Ereignis überträgt. Im Gegensatz dazu kann in ActionScript 3.0 die addEventListener() -Methode für jedes Objekt aufgerufen werden, das Bestandteil des Ereignisablaufs ist.

  • In ActionScript 2.0 können Ereignis-Listener entweder Funktionen, Methoden oder Objekte sein, während in ActionScript 3.0 als Ereignis-Listener nur Funktionen oder Methoden möglich sind.

  • Die Syntax on( event ) wird in ActionScript 3.0 nicht mehr unterstützt, sodass Sie einem Movieclip keinen ActionScript-Ereigniscode anhängen können. Sie können nur addEventListener() verwenden, um einen Ereignis-Listener hinzuzufügen.

    Im folgenden Beispiel, in dem das MouseEvent.CLICK -Ereignis für die Button-Komponente aButton abgefragt wird, wird das grundlegende Ereignisverarbeitungsmodell von ActionScript 3.0 veranschaulicht:

    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);  
    }

    Weitere Informationen zur Ereignisverarbeitung in ActionScript 3.0 finden Sie unter Programmieren mit ActionScript 3.0 . Einzelheiten zur ActionScript 3.0-Ereignisverarbeitung für Komponenten finden Sie unter Verarbeiten von Ereignissen .

Rechtliche Hinweise | Online-Datenschutzrichtlinie