begin process at 2012 05 27 20:09:34
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Flash / Flash MX

 > 

Scripts

 > 

ActionScript

 > 

Une seule fonction avec variables pour plusieurs boutons en AS3?


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Une seule fonction avec variables pour plusieurs boutons en AS3?

jeudi 6 novembre 2008 à 10:00:53 | Une seule fonction avec variables pour plusieurs boutons en AS3?

RAMEAUTL

Bonjour à toutes et à tous.
Je suis en train de passer d'AS2 à AS3 et je suis loin d'être un pro.
En AS2 j'utilisais une fonction avec variable pour lancer la lecture de la timeline à partir de différentes images.
C'est-à-dire plusieurs boutons appelant la même fonction, chaque bouton appelant la fonction avec une valeur différente pour la variable.

Voici un exemple:
Jouer = function(imageDepart){
    var imageDepart:Number;
    this.gotoAndPlay(imageDepart);
}
bouton1_btn.onPress = function(){
    Jouer(50);
}
bouton2_btn.onPress = function(){
    Jouer(100);
}
etc...
En AS3 je n'arrive qu'à faire ça:
function Jouer(evt:MouseEvent):void {
    gotoAndPlay(50);
    }
bouton1_btn.addEventListener(MouseEvent.CLICK,Jouer);
etc...

Ce qui m'oblige à créer une fonction pour chaque bouton. Là j'ai fait simple, mais si je fais une fonction à plusieurs variables, ça devient très lourd.
Merci pour votre aide

vendredi 7 novembre 2008 à 15:36:25 | Re : Une seule fonction avec variables pour plusieurs boutons en AS3?

arne6

tu peux récupérer le nom du bouton dans la fonction function Jouer(e:Event):void { var bouton=e.target.name; if(bouton=="bouton1_btn"){ gotoAndPlay(50); }else if(bouton=="bouton2_btn"){ gotoAndPlay(100); } }
vendredi 7 novembre 2008 à 16:30:56 | Re : Une seule fonction avec variables pour plusieurs boutons en AS3?

RAMEAUTL

Ca marche et en plus je comprends pourquoi!
Merci pour cette précieuse aide arne6.
vendredi 7 novembre 2008 à 16:43:47 | Re : Une seule fonction avec variables pour plusieurs boutons en AS3?

pegase31

Membre Club Administrateur CodeS-SourceS
Petite précision : e.currentTarget est plus efficace pour un ciblage direct et cela évite des erreurs à venir ;)

Peg'
vendredi 7 novembre 2008 à 17:18:57 | Re : Une seule fonction avec variables pour plusieurs boutons en AS3?
samedi 8 novembre 2008 à 10:27:00 | Re : Une seule fonction avec variables pour plusieurs boutons en AS3?

RAMEAUTL

Excusez mon ignorance, mais qu'est-ce qu'un ciblage direct et comment cela ce traduit-il en code avec e.currentTarget?
Merci.
samedi 8 novembre 2008 à 12:46:23 | Re : Une seule fonction avec variables pour plusieurs boutons en AS3?

arne6

un exemple concret: http://www.flepstudio.org/forum/tutorials/428-target-currenttarget-actionscript-3-0-a.html arne
samedi 8 novembre 2008 à 18:01:06 | Re : Une seule fonction avec variables pour plusieurs boutons en AS3?

RAMEAUTL

Un vrai bonheur. Merci à tous les deux de me faire progresser!
vendredi 17 avril 2009 à 13:47:12 | Re : Une seule fonction avec variables pour plusieurs boutons en AS3?

Yode



Bonjour, je profite de ce topic pour poser une question en rapport :

Dans le cas où on a plusieurs boutons, on a donc vu comment rédiger une seule fonction qui repère quel bouton est cliqué et agit en conséquence. Mais y a-t-il moyen d'éviter d'avoir à écrire pour chacun :

bouton1_btn.addEventListener(MouseEvent.ROLL_OVER,rollover);
bouton1_btn.addEventListener(MouseEvent.ROLL_OUT,rollout);
bouton1_btn.addEventListener(MouseEvent.MOUSE_DOWN,Jouer);

et donc ainsi de suite :

bouton2_btn.addEventListener(MouseEvent.ROLL_OVER,rollover);
bouton2_btn.addEventListener(MouseEvent.ROLL_OUT,rollout);
bouton2_btn.addEventListener(MouseEvent.MOUSE_DOWN,Jouer);

bouton3_btn.addEventListener(MouseEvent.ROLL_OVER,rollover);
(...) etc etc...


Merci d'avance pour vos tips !


vendredi 17 avril 2009 à 14:19:11 | Re : Une seule fonction avec variables pour plusieurs boutons en AS3?

arne6

salut tu peux utiliser une boucle: ici j'affect 5 clips sur ma scène : menu0,menu2,...,menu5; function initMenu() { for (var i=0; i<6; i++) { var menuElt=this["menu"+i]; menuElt.mouseChildren=false; menuElt.buttonMode=true; menuElt.addEventListener(MouseEvent.MOUSE_DOWN,lanceSection); menuElt.addEventListener(MouseEvent.ROLL_OVER,menuRollOver); menuElt.addEventListener(MouseEvent.ROLL_OUT,menuRollOut); } }

arne

1 2

Cette discussion est classée dans : fonction, function, variables, jouer, as3


Répondre à ce message

Sujets en rapport avec ce message

setInterval perte des variables [ par f ] Lorsque je lance ma fonction directement, tout s'execute normalement, mais j'ai besoin de l'executer 5 fois avec un interval de temps entre.Mais lorsq fonction Rewind bancale [ par Gizmil ] Salut, J'utilise ce code (que j'ai trouvé sur le net) pour faire une lecture arrière dans un movie clip:Rewind = function(cible) {    cib impossible d'extraire des variables globales déclarées dans une fonction ?? [ par mazzala ] Bonjour a tous, je developpe en ce moment une petit appli flash en relation avec un fichier xml . J'arrive bien a interroger le xml et a trouver mes Executer une fonction..... [ par wooki ] Bonjour, ....en créant le nom de la fonction a partir de variable. Ex : i=1; do["test" + i]; function test1() { } function test2() {} :: fonction wait [ par lilyvirus ] bonjour,coment faire une fonction wait qui me permettrai d'attendre n seconde avant de jouer un clip puis attendre n seconde avant de jouer un autre c probleme avec une fonction [ par Isawa_Takayuki ] Bonsoir ^^Bon, je me présente rapidement ^^'... je suis étudiant dans une école d'infographie 3D (en deuxieme année de prépa pour le moment) et l'on n Utilisation des variables en dehors de la fonction onLoad [ par philpil ] Bonjour,Après un échange de données entre Flash MX et PHP qui se passe bien, les données arrivent dans la fonction onLoad. Elles sont utilisables à l' Problèmes de visibilité de variables [ par Kerlon ] Voici mon code :this.onMouseDown = function () {var a = _root._xmouse;<font color="#00 LoadVars et variables [ par MAZALEYRAT ] Bonjour ! ...pour ceux qui maitrisent  parfaitement bien la fonction LoadVars... et c'est bien là que réside mon problème du moment. Je butte très cer Différence Fonction syntaxe [ par Orange73 ] Hello,Juste une petite question dont je connait certainement deja la reponse mais c'est pour etre sur :)La différence entre la syntaxe fonction:functi


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,530 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales