Bonjour,
Je code actuellement une petite application en ActionScript 3. Pour les besoins de cette application je dois charger des images contenues dans mon dossier courant, au passage de la souris sur un Clip. Le chargement de l'image, son redimensionage et son insertion dans ma scène ne pose pas de problème. Par contre, les choses se corsent lorsqu'il s'agit de supprimer l'image une fois que ma souris est sortie de la zone du Clip.
Voici le code que j'ai actuellement:
Je crée donc un nouveaux ProLoader, grâce à une requête URL je charge mon image. Une fois celle-ci chargée, j'applique 2 3 modification de ces propriétés et enfin je l'ajoute à la scène grâce à la méthode 'addChild'.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35 store4.addEventListener(MouseEvent.MOUSE_OVER, fl_ClickToLoadUnloadSWF); store4.addEventListener(MouseEvent.MOUSE_OUT, fl_ClickToLoadUnloadSWF); import fl.display.ProLoader; import flash.display.Bitmap; var fl_ProLoader:ProLoader; var fl_ToLoad:Boolean = true; function fl_ClickToLoadUnloadSWF(event:MouseEvent):void { var i:int = event.target.name.charAt(event.target.name.length-1); if(event['type']=="mouseOver") { var pict2:Bitmap = new Bitmap(); fl_ProLoader = new ProLoader(); fl_ProLoader.load(new URLRequest("store"+i+".jpg")); fl_ProLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, pict_is_loaded) function pict_is_loaded (e:Event) { var pict = fl_ProLoader.content; pict.x = 780; pict.y = 150; pict.width = 224; pict.height = 168; addChild(pict); pict2=pict; } } else { fl_ProLoader.unload(); removeChild(fl_ProLoader); fl_ProLoader = null; } }
Pour la supprimer j'ai donc naturellement pensé à la méthode removeChild ainsi qu'au déchargement du ProLoader mais sans succès l'image reste scotchée à ma scène :/
PS: J'ai également testé removeChild(pict) ou essayé d'utiliser un tampon du type Bitmap pour sauvegardé la variable pict dans une variable globale, sans plus de succès.
Voila en espérant une idée quelconque pour résoudre mon problème ou éventuellement une autre méthode permettant de faire la même chose
Si vous avez la moindre question concernant le code dans son intégralité ou l'application en elle-même n'hésitez pas
Chipss,
Partager