Creation de plusieurs movieClip dans une boucle for, avec nom variable

Résolu
quepebaBIS Messages postés 3 Date d'inscription mercredi 27 janvier 2010 Statut Membre Dernière intervention 3 février 2010 - 2 févr. 2010 à 23:43
quepebaBIS Messages postés 3 Date d'inscription mercredi 27 janvier 2010 Statut Membre Dernière intervention 3 février 2010 - 3 févr. 2010 à 18:22
Bonjour,

Voila, j'essais de creer par une boucle for un ensemble de clip qui contiendront des images récupérer via xml.
Donc mes adresses d'images sont stocker dans un array.
Via ma boucle for (j=0; j<numbMax; j++), je récupère l'url de mon images j, puis je crée un movie clip, que je voudrais appeler clip_j. Après recherche sur le net, j'arrive a lui donner un nom via la propriété . name, mais ensuite je n'arrive pas a rappeler mon clip via ce nom.

Voici le code :

for (j=0; j<numbMax; j++) {

var vignUrl:URLRequest=new URLRequest("imgpetit/"+ tableau[j]);

//creer le movie clip qui va l'heberger
var nomClip:MovieClip = new MovieClip();
nomClip.name ="vignClip"+j; //attribution du nom
addChild(nomClip);
nomClip.x=15*j;
}

Le résultat, j'ai un clip qui s'affiche avec la dernière image qui devrait être charger, alors je sais pas si les autres sont en dessous ou pas, mais c'est pas le résultat rechercher, moi je voudrais qu'elles s'affichent les unes a cote des autres.

J'espère avoir été assez claire,
Merci de votre aide !

4 réponses

Orange73 Messages postés 1375 Date d'inscription dimanche 28 novembre 2004 Statut Membre Dernière intervention 2 août 2011
3 févr. 2010 à 17:54
Il faut mettre
var vignChargeur:Loader = new Loader(); 

dans ta boucle


-- Orange73 --

"L'homme n'est pas fait pour travailler, la preuve c'est que cela le fatigue" (Voltaire)
3
Orange73 Messages postés 1375 Date d'inscription dimanche 28 novembre 2004 Statut Membre Dernière intervention 2 août 2011
3 févr. 2010 à 13:53
Hello,

quel est ton coe qui attribue l'image au clip ?


-- Orange73 --

"L'homme n'est pas fait pour travailler, la preuve c'est que cela le fatigue" (Voltaire)
0
quepebaBIS Messages postés 3 Date d'inscription mercredi 27 janvier 2010 Statut Membre Dernière intervention 3 février 2010
3 févr. 2010 à 14:46
Salut,

Pour attribuer l'image au clip avant la boucle je crée un loader :
var vignChargeur:Loader = new Loader();

apres dans ma boucle je recupere l'url de mon image via un tableau creer par mon xml:
var vignUrl:URLRequest=new URLRequest("imgpetit/"+ tableau[j]);

Puis j'affiche dans mon clip :
vignChargeur.load(vignUrl);
nomClip.addChildAt(vignChargeur,0);

Effictivement dans le code que j'ai mis j'ai oublié une ligne ou je load mon image.
Mais l'affichage des images marchent, j'ai testé avec des clips créés manuellement, mon soucis est vraiment la création des clips dans la boucle for.

Merci de ton aide

code :
var numbMax:Number;// on l'initialise ici car en image 1 le tableau n'existe pas encore
var largeur:Number; // valeur de decalage des vignettes
largeur= 168;
numbMax=tableau.length-1;//taille de tableau


/*-------------------------------------------------------------------------
GESTION DE L'AFFICHAGE DES VIGNETTES
/*-----------------------------------------------------------------------*/

/*creation du conteneur de la vignette à charger*/
var vignChargeur:Loader = new Loader();

/*recuperation de l'url de la vignette et chargemetn dans le chargeur*/
for (j=0; j<numbMax; j++) {
//etablir l'url
var vignUrl:URLRequest=new URLRequest("imgpetit/"+ tableau[j]);

//creer le movie clip qui va l'heberger
var nomClip:MovieClip = new MovieClip();

nomClip.name ="vignClip"+j; //attribution du nom
addChild(nomClip);

//chargement de l'url puis affichage dans le clip creer
vignChargeur.load(vignUrl);
nomClip.addChildAt(vignChargeur,0);
nomClip.x=15*j;

}
0
quepebaBIS Messages postés 3 Date d'inscription mercredi 27 janvier 2010 Statut Membre Dernière intervention 3 février 2010
3 févr. 2010 à 18:22
C'est pas vrai, c'etait ca !!!
Quand je pense au temps que j'ai passé pour essayer de trouver...

En tout cas merci beaucoup, je vais pouvoir continuer a avancer
0
Rejoignez-nous