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 :
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);
 
}
Donc me voilà avec 83 écouteurs en mémoire qui écoutent chacun leur miniature.

Maintenant, je créé un tableau afin d'enregistrer en mémoire les chemins des photos agrandie :

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";
 
}
J'ai donc maintenant tout les chemins des photos agrandies en mémoire.

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 :

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);
 
}
Et je bloque, je ne vois pas comment faire l'association... Quelqu'un pourrait-il me donner une piste ?

D'avance merci.

Yann