2009-09-26 6 views
2

Je suis nouveau sur ActionScript 3 (sans aucune expérience avec le développement Flash) et je me demandais comment j'allais ajouter un écouteur d'événement souris à un bitmap? Le code fonctionne avec un sprite, mais pas avec un bitmap. Voici une version raccourcie du code que j'essaie de lancer, j'espère que c'est logique!Ajout d'un écouteur d'événement souris à un bitmap avec ActionScript 3

var fsImageRequest:URLRequest = new URLRequest("img/fullscreen.png"); 
var fsImageLoader:Loader = new Loader(); 
fsImageLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, fsImageLoaded); 
fsImageLoader.load(fsImageRequest); 
addChild(fsImageLoader); 

function fsImageLoaded(e:Event):void { 
    var fsImageLoader:Loader = Loader(e.target.loader); 
    fsImage = Bitmap(fsImageLoader.content); 
    fsImage.addEventListener(MouseEvent.CLICK, fullScreenClick) 
} 

Merci d'avance.

Répondre

9

Vous avez ajouté l'écouteur d'événement dans la ligne fsImage.addEventListener (...

Maintenant, vous devez écrire la fonction qui gère cet événement, tels que:

private function fullScreenClick(event:MouseEvent):void 
{ 
    // do something here 
} 

EDIT: Pour ajouter un bitmap à un sprite, vous pouvez faire ce qui suit:.

var sprite: Sprite = new Sprite(); 
sprite.addChild(fsImage); 
addChild(sprite); 
+1

Salut, merci pour la réponse! Malheureusement, j'ai déjà une fonction pour gérer l'événement - cela fonctionne avec un sprite ou un champ de texte, mais pas un bitmap. Est-ce que je peux faire un bitmap agir comme un sprite? –

+0

Qu'essayez-vous exactement de faire avec l'image bitmap? –

+0

Je veux être en mesure d'exécuter un événement de souris dessus. Y a-t-il un moyen de l'encapsuler dans un sprite? –

7

vous ne pouvez pas ajouter MouseEvents à un bitmap, car il est un descendant du InteractiveObject de type vous devrez envelopper dans un Sprite ou un MovieClip et ajoutez des écouteurs Click au conteneur.

Questions connexes