Type de paramètre dans une fonction [RESOLU]

Type de paramètre dans une fonction [RESOLU] - Flash/ActionScript - Programmation

Marsh Posté le 18-11-2007 à 12:47:22    

Bonjour,
 
Je tente d'optimiser mon code et je galère.
J'ai  des boutons nommés ItinéraireTotal_mc.ItinéraireDayx_btn, avec x variant de 1 à n.
Je dois appliquer des tween à ces boutons et je veux rendre le code le moins lourd possible, donc passer en paramètre le nom du bouton.
 
Première méthode :
 
afficheBoutonItineraireGOA (ItinéraireTotal_mc.ItinéraireDay4_btn);
 
function afficheBoutonItineraireGOA (btn) {
    Affiche_btn = new Tween (btn, "_alpha", None.easeIn, 0, 80, 3, false);
}

 
Ca marche ! mais c'est pas encore optimisé donc on s'en fiche.
 
Deuxième méthode, celle que je veux mettre en oeuvre :
 
 
var DebutBtn =  'ItinéraireTotal_mc.ItinéraireDay';
var FinBtn =  '_btn';
 
afficheBoutonItineraireGOA (4);
 
function afficheBoutonItineraireGOA (btn) {
     bouton = DebutBtn.concat(btn.toString(),FinBtn);
     Affiche_btn = new Tween (bouton, "_alpha", None.easeIn, 0, 80, 3, false);
}

 
Et là donc ça ne marche pas. Normal vu que le premier argument de la tween doit être un objet.
Comment donc créer un objet bouton dont le nom est construit comme ci-dessus ?
 
Voilà voilà, merci pour votre aide !
 
EDIT : après une intense réflexion, je passe par un tableau contenant tous mes boutons  :whistle:


Message édité par preem le 18-11-2007 à 16:24:12

---------------
Flick r
Reply

Marsh Posté le 18-11-2007 à 12:47:22   

Reply

Marsh Posté le 20-11-2007 à 14:22:30    

Salut,
 
Pour appeler un movieclip avec une concaténation de string, tu peux faire comme ça :
 

Code :
  1. var DebutBtn =  'ItinéraireDay';
  2. var FinBtn =  '_btn';
  3. afficheBoutonItineraireGOA (4);
  4. function afficheBoutonItineraireGOA (btn) {
  5.      Affiche_btn = new Tween (ItinéraireTotal_mc[DebutBtn+btn+FinBtn], "_alpha", None.easeIn, 0, 80, 3, false);
  6. }


 
Ca fonctionne à tout les niveaux et c'est souvent pratique. par exemple, this["monBouton"] est identique à this.monBouton
 


Message édité par premotif le 20-11-2007 à 14:30:33
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed