Was ist dispatchEvent in Flash AS3?

7

Hallo, ich möchte wissen, was dispatchEvent in AS3 ist. Ich habe beim googlen keine Ahnung bekommen. :( Also bitte hilf mir

Bearbeiten 1:

%Vor%

was bedeutet das? (

    
coderex 06.12.2009, 17:12
quelle

4 Antworten

14

Ein Beispiel könnte helfen? Wenn Sie Flash IDE haben, versuchen Sie dies in Ihrer Zeitleiste:

%Vor%

Dieser Code demonstriert, wie die addEventListener und dispatchEvent Gegenstücke sind. Das Ereignis MOUSE_MOVE wird intern ausgelöst, Sie können jedoch Ihre eigenen Ereignisse wie MOUSE_MOVE mithilfe von dispatchEvent versenden.

Was in diesem Code passiert, ist, dass MOUSE_MOVE von der Bühne erkannt wird, aber anstatt das im mouseMoveListener zu behandeln, senden Sie ein anderes Ereignis (namens ) myCustomEvemt ), die stattdessen in myCustomEventListener behandelt wird. Es funktioniert genau wie das Ereignis MOUSE_MOVE , nur dass Sie das Ereignis anstelle des Flash-Players gesendet haben.

Hoffe, das hilft.

    
alecmce 07.12.2009 10:11
quelle
4

Sagen Sie, es gibt zwei Klassen: A und B. Nun möchten Sie, dass "functionAfterMyFun" auftreten soll, nachdem myFun in Klasse B aufgetreten ist. Dann würden Sie dispatchEvent in der Funktion myfun () der Klasse B verwenden.

%Vor%     
Vishwas G 31.10.2011 14:35
quelle
3

Grundsätzlich ist es ein Mechanismus, um Objekte zu benachrichtigen, dass etwas passiert ist. Wenn Sie ein Ereignis versenden, muss etwas auf dieses Ereignis warten.

Es ist im Grunde wie ein Telefonanruf (dispatchEvent (neues CallEvent (CallEvent.CALL))). Wenn die Person, die Sie anrufen möchten, nicht anwesend ist, hören sie nicht auf das Telefon-Ereignis, so dass sie nichts dagegen tun können. Wenn sie sich in (addEventListener (CallEvent.Call, answerHandler)) befinden, können sie sie beantworten, vielleicht direkt an die Voicemail senden.

Für eine vollständige Übersicht, lesen Sie diesen Artikel von Adobe.

Ссылка

Viele Programmiersprachen nutzen Ereignisse, so dass es sich lohnt, damit umzugehen.

James

Antwort auf Edit1

Es sieht so aus, als hätten Sie eine Methode, die eingerichtet wurde, um ein MouseEvent zu behandeln. Klicken Sie irgendwo auf ein Objekt. Wenn dies geschieht, wird eine andere Eigenschaft der Eigenschaft scaleX auf 0 gesetzt (wodurch sie unsichtbar wird). Ein neues Ereignis wird dann mit dem auf "setVolume" festgelegten Typ ausgelöst. Das allein würde nichts bewirken. Irgendwo anders ist dies wahrscheinlich eine Zeile, die ein wenig wie addEventListener aussieht ("setVolume", doSomethingMethod); . Wenn die ursprüngliche Methode ausgelöst wird (scheinbar ein Mausklick), sollte die doSomethingMethod ausgelöst werden.

    
James Hay 06.12.2009 17:36
quelle
-1

addaddEventListener() macht gerne eine Ehevereinbarung.
Zum Beispiel, wenn deine Frau einen anderen Mann außerhalb hat, wirst du $ 100 von deiner Frau bekommen. Glücklicherweise passiert das.
dispatchEvent() bedeutet, dass du 100 $ bekommst.

    
Luke Chen 12.01.2016 07:41
quelle