OnClick Event abfangen

V3n0m2k

Grünschnabel
Heyho!
ich hab ein kleines Problem und zwar versuch ich schon seit einiger Zeit heraus zu finden wie ich einen onClick Event abfange um dann weitere Aktionen auszuführen.

Also zum Problem ich hab ein Flash Menü in dieses Menü wird ein Mc geladen, welches als Positinierungsbasis für die Buttons fungiert und auf das werden dann die Button Mcs drauf geladen.
also:

Main.swf >> ButtonBase.swf >> Button.swf

Ist es möglich ein onClick Event das auf Button.swf stattfindet in Main.swf abzufangen bzw. abzufragen und NUR dann weitere Aktionen durchzuführen?
Ich hab bereits versucht das ganze über Eventhandler zu realisieren aber das hatte nicht den gewünschten Effekt.

Danke im vorraus....
 
Zuletzt bearbeitet:
Hi,

das ist möglich. Da du etwas kompliziert viele verschiedene SWFs benutzt, müsstes du den Clip feststellen, in den du deinen Button geladen hast. Dann kannst du ihn z.B. mit:
Code:
main_mc.buttonBase_mc.button_btn.onClick = function(){
   tu_was();
}
"steuern".

- bluewing
 
Es kommt ein wenig drauf an, welche Version von ActionScript du verwendest. Mit AS3 kann man Events "bubbeln" lassen (siehe Referenz, Event-Klasse->bubbles), das bedeutet, dass der Event an alle Eltern-Objekte des Dispatchers weitergereicht wird. So könntest du das relativ einfach lösen.
In AS2 kommst du ohne eine Referenzierung wohl kaum aus. Die Frage stellt sich hier bloss, ob du a) den Main-Clip vom Button-Clip aus referenzieren sollst oder b) umgekehrt. Generell ist es nicht allzu schön, untergeordnete Objekte von übergeordneten abhängig zu machen, deshalb empfehle ich a). Da müsstest du allerdings überprüfen, ob die ButtonBase- und Button-Clips bereits geladen sind. Ich empfehle aber in jedem Fall EventListener.
Mich dünkt ebenfalls die gewählte Struktur mit den drei verschiedenen swf's nicht allzu glücklich.
 
Zurück