Publicom13
Messages postés5Date d'inscriptionmercredi 13 janvier 2010StatutMembreDernière intervention18 janvier 2010
-
13 janv. 2010 à 18:41
Publicom13
Messages postés5Date d'inscriptionmercredi 13 janvier 2010StatutMembreDernière intervention18 janvier 2010
-
18 janv. 2010 à 15:15
Bonjour à tous,
Je désirerais accéder à des champs text nommés valeur et contenus dans des clips déjà présents sur ma scène et nommés de la manière suivante : case_1, case_2, case_3, ...
Pour cela, j'aurais aimé utiliser une boucle de la manière suivante :
for(i = 1; i <= 20; i++){
this["case_" + i] . valeur . text = tabDonnees[i]
}
Malheureusement, ceci ne semble pas fonctionner. Le tableau tabDonnees étant modifié dynamiquement, les champs text des clips peuvent prendre des valeurs différentes selon l'action de l'utilisateur.
J'ai cherché plusieurs solution avec eval ou _root sans aucun succès. Je précise que je suis en AS2.
Si vous avez une idée ou un conseil, je suis preneur.
piere2
Messages postés235Date d'inscriptionlundi 26 février 2007StatutMembreDernière intervention26 mai 2013 18 janv. 2010 à 15:01
Voici la code juste compte tenu du fla que j'ai reçu:
renommer les clip dans contener_case en commençant à case_0:
// Déclaration du tableau
var tabData = ['A', 'B', 'C', 'D'];
// Parcours des cases
for (i=0; i<=tabData.length; i++) {
contener_case["case_"+i].valeur.text = tabData[i];
}
Publicom13
Messages postés5Date d'inscriptionmercredi 13 janvier 2010StatutMembreDernière intervention18 janvier 2010 14 janv. 2010 à 09:26
Merci beaucoup pour ta réponse Pi'ère2, malheureusement j'avais bien mis le ; en fin de ligne, il s'agit d'un oubli lors de la saisie de mon message.
Pour ce qui est du tableau, il est bien renseigné. J'ai pour cela fait un test direct sur un clip en l'appelant avec son nom manuellement, et la valeur est bien attribuée.
case_1 . valeur . text = tabDonnees[1];
Le this["case_" + i] ne semble pas fonctionner, il me génère une erreur de compilation. Cela est peut être du au fait que j'utilise de l'AS2. J'ai donc tenté avec eval mais sans succés.
for(i = 1; i <= 20; i++){
eval("case_" + i) . valeur . text = tabDonnees[i];
}
Publicom13
Messages postés5Date d'inscriptionmercredi 13 janvier 2010StatutMembreDernière intervention18 janvier 2010 15 janv. 2010 à 15:06
Merci Pi'ère2, je viens de te faire parvenir un email contenant mon fla. Il s'agit surement d'une erreur de débutant, je t'avoue que je ne suis pas très à l'aise en actionscript.
Si tu trouve, je ne manquerais pas de partager ta solution avec tout le monde ici.
Publicom13
Messages postés5Date d'inscriptionmercredi 13 janvier 2010StatutMembreDernière intervention18 janvier 2010 18 janv. 2010 à 09:20
Désolé pour mon délais de réponse, je n'ai pas été trop disponible ce weekend.
Merci encore à toi Pi'ère2 pour ta patience. Je t'ai bien envoyé le mail, mais il semble que ce dernier ne soit pas passé, le fla ne pèse pourtant que 48Ko.
Publicom13
Messages postés5Date d'inscriptionmercredi 13 janvier 2010StatutMembreDernière intervention18 janvier 2010 18 janv. 2010 à 15:15
Merci beaucoup Pi'ère2, c'est exactement cela. Désolé d'avoir rajouté une erreur au niveau de la clef tableau en simplifiant mon code, mais l'essentiel est la, je ne connaissais pas la structure d'appel mon_clip['mon_sous_clip'].
En tout cas c'est vraiment sympa de ta part d'avoir pris un peu de ton temps pour régler mon problème. Merci encore