Bonjour !
Voilà je vous explique mon problème pas très simple à comprendre...
Je suis en train de réaliser une galerie de photos. Cette galerie se compose de miniatures sur lesquels un click de la souris ouvre la photo en plus grande résolution.
J'ai 83 miniatures de photos sur ma scène. Je souhaite donc ajouter à chacune d'elles un écouteur de type MouseEvent.CLICK afin d'écouter le click de la souris sur chaque miniature :
Donc me voilà avec 83 écouteurs en mémoire qui écoutent chacun leur miniature.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 for(i = 1; i < 84; i ++) { // rando2005Miniature1_mc représente par exemple la première miniature photo. this["rando2005Miniature" + i + "_mc"].addEventListener(MouseEvent.CLICK, rando2005ChargementPhotos); }
Maintenant, je créé un tableau afin d'enregistrer en mémoire les chemins des photos agrandie :
J'ai donc maintenant tout les chemins des photos agrandies en mémoire.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 var urlPhotosRando2005:Array = new Array(); // Je fais commencer mon tableau à 1 for (i = 1; i < 84; i++) { urlPhotosRando2005[i] = "trekPhotos/rando2005Photo" + i + ".jpg"; }
Sachant que les écouteurs appellent tous la même fonction "rando2005ChargementPhotos", comment déclarer, dans celle-ci, l'association de la miniature avec l'élément du tableau qui lui correspond...
En gros, comment associer "rando2005Miniature1_mc" à "urlPhotosRando2005[1]" dans la fonction "rando2005ChargementPhotos"...
C'est la question...
J'ai commencé à écrire ceci :
Et je bloque, je ne vois pas comment faire l'association... Quelqu'un pourrait-il me donner une piste ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 public function rando2005ChargementPhotos(evt:MouseEvent):void { chargeurImages.load(new URLRequest(urlPhotosRando2005[i])); chargeurImages.contentLoaderInfo.addEventListener(Event.OPEN, ouvertureChargementPhoto); chargeurImages.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, progressionChargementPhoto); chargeurImages.contentLoaderInfo.addEventListener(Event.COMPLETE, finChargementPhoto); }
D'avance merci.
Yann
Partager