2010-04-13 4 views
0

Je charge un fichier SWF externe à l'aide de la classe Loader et l'ajoute à la scène avec addChild. Lorsque vous essayez d'ajouter un écouteur d'événement de clic de souris au MovieClip, en utilisant addEventListener, rien ne se passe, l'événement ne se déclenche jamais.Ajout d'événements de souris à un fichier SWF chargé dynamiquement

Existe-t-il un moyen spécifique d'ajouter des écouteurs à des clips externes chargés?

Mon code ressemble un peu à ceci:

var target:MovieClip = assets["screensaver"] as MovieClip; 
target.root.addEventListener(MouseEvent.CLICK, onClickScreenSaver, true); 
addChild(target); 

La cible apparaît sur l'écran, mais l'événement Click est complètement ignorée.

Répondre

0

J'ai ajouté une couche supérieure dans le film chargé, converti à un bouton, et le clic enregistré.

Merci pour toutes les réponses utiles!

1

Vous pouvez ajouter un écouteur d'événement à la scène.

+0

J'ai besoin de l'écouteur sur l'objet lui-même, car ils sont nombreux, et ils nécessitent une logique différente. Merci pour votre réponse. –

1

Essayez de définir mouseChildren sur false sur le Loader pour empêcher le passage des clics.
Ensuite, ajoutez votre écouteur à l'instance de chargeur réelle au lieu du contenu.

0

Une raison particulière pour laquelle vous devez ajouter l'écouteur à target.root? Avez-vous essayé juste faire ...

target.addEventListener(MouseEvent.CLICK, onClickScreenSaver, true); 
+0

Oui, essayé les deux. :) –

Questions connexes