Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : petit pb de variable en as3 [ Scripts / ActionScript ] (inaden)

jeudi 4 décembre 2008 à 17:36:37 | petit pb de variable en as3

inaden

Bonjour à tous

voilà j'ai le script suivant pour faire un fade alpha :

monBouton.addEventListener ( MouseEvent.CLICK, clicBouton );

function clicBouton(evt:MouseEvent):void {
    monClip.addEventListener(Event.ENTER_FRAME,baisserAlpha);
    monBouton.removeEventListener(MouseEvent.CLICK,clicBouton);
}

function baisserAlpha(evt:Object):void {
    trace("hop");
    evt.target.alpha-=.1;
    if (evt.target.alpha>0) return;
    evt.target.removeEventListener(Event.ENTER_FRAME,baisserAlpha);
}

ET ça, ça marche grâce à crackter. Bref...

QUESTION 1 :
si un second bouton doit agir sur un second clip existe-t) il une autre solution que de mettre :

monBouton2.addEventListener ( MouseEvent.CLICK, clicBouton2 );

function clicBouton2(evt:MouseEvent):void {
    monClip2.addEventListener(Event.ENTER_FRAME,baisserAlpha);
    monBouton.removeEventListener(MouseEvent.CLICK,clicBouton);
}

J'ai essayé des trucs du genre :
monBouton2.addEventListener ( MouseEvent.CLICK, clicBouton,monClip2);
//avec
function clicBouton(evt:MouseEvent,cible:MovieClip):void {
    cible.addEventListener(Event.ENTER_FRAME,baisserAlpha);
    monBouton.removeEventListener(MouseEvent.CLICK,clicBouton);
}

Mais cela m'envoie proprement boulé   

QUESTION 2 :
si je ne connais pas le nom du clip sur lequel mon bouton doit agir (par exemple il doit agir sur le clip visible) comment le dire à ma fonction clicBouton ?
Je sais cela est un peu abstrait, mais je patauge bien avec l'as3.

Remerciant par avance celles et ceux qui se pencheront sur mon incompréhension...

Tout vient à qui sait attendre

jeudi 4 décembre 2008 à 18:26:02 | Re : petit pb de variable en as3

crackter

Réponse acceptée !
On ne peut pas surcharger addEventListener car la fonction est de type :

function addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void

donc le 3e arguments est un type boolean.


Sinon il existerait bien 2 méthodes pour résoudre ton soucis (à ce que j'en ai compris) :

bouton2.addEventListener(MouseEvent.CLICK,clicBouton);
bouton1.addEventListener(MouseEvent.CLICK,clicBouton);
bouton2.cible = clip;
bouton1.cible = clip;
function clicBouton(evt:MouseEvent):void {
    evt.target.cible.addEventListener(Event.ENTER_FRAME,baisserAlpha);
    evt.target.removeEventListener(MouseEvent.CLICK,clicBouton);
}

ou

bouton2.addEventListener(MouseEvent.CLICK,clicBouton);
bouton1.addEventListener(MouseEvent.CLICK,clicBouton);
function clicBouton(evt:MouseEvent):void {
    switch (evt.target) {
        case (bouton1) : clip.addEventListener(Event.ENTER_FRAME,baisserAlpha);break;
        case (bouton2) : clip2.addEventListener(Event.ENTER_FRAME,baisserAlpha);break;
    }
    evt.target.removeEventListener(MouseEvent.CLICK,clicBouton);
}


Il doit y avoir d'autre moyens mais c'est les premiers qui me viennent à l'esprit :).

jeudi 4 décembre 2008 à 23:57:00 | Re : petit pb de variable en as3

pegase31

Membre Club Administrateur CodeS-SourceS
Bonsoir,

L'utilisation d'un Tween pour baisser l'alpha serait plus judicieux (et aussi plus pratique), mais ce n'est qu'un détail de codage annexe.

Peg'

vendredi 5 décembre 2008 à 01:14:41 | Re : petit pb de variable en as3

crackter

Dans ce cas autant utiliser Tweener (ou simili) car Tween est un bouffe ressource ;).
Après tout dépend de la quantité d'informations à traiter.

vendredi 5 décembre 2008 à 08:50:36 | Re : petit pb de variable en as3

inaden

Salut à vous et merci pour vos réponses,

crakter : pour ta première réponse j'ai le message d'erreur :

1119: Accès à la propriété cible peut-être non définie, via la référence de type static flash.display:SimpleButton.

vendredi 5 décembre 2008 à 08:54:55 | Re : petit pb de variable en as3

inaden

Tiens.. il a pas pris toute ma réponse...
Donc par contre, la seconde fonctionne parfaitement. !!!  

Pour la première j'ai essayé de déclarer les clip avant, mais cela ne change rien.

Pour les Tween, je sais pas pourquoi, mais je n'aime pas trop? Je trouve que les réponses ne sont pas toujours très souples. Et puis je trouve plus sympa de chercher à faire les choses par soi-même... quand c'est possible !

De toute façon, sur une autre fonction, le problème restait entier !

Encore merci à vous de vous être penché sur le problème.

Tout vient à qui sait attendre

vendredi 5 décembre 2008 à 13:37:54 | Re : petit pb de variable en as3

crackter

Oui il faut adapter le code suivant ton propre source, moi je n'ai pris le cas que pour des boutons "clip".

Si tu aimes bien faire tout par toi même au niveau de l'animation, n'hésite pas à faire tes propres classes d'animation. Si tu as besoin de plus d'info à ce sujet, contacte moi par mp.

vendredi 5 décembre 2008 à 14:04:28 | Re : petit pb de variable en as3

inaden

OK.
Je vois ce que tu veux dire.
Pour l'instant je bosse les cours que j'ai trouvé là :

http://wiki.mediabox.fr/tutoriaux/flash/pratique_as3#chapitre_1_-_qu_est_ce_que_l_actionscript_3

Cours assez complet, mais on croit comprendre et quand on est devant... sans les exemples...
En tout cas, merci pour ta proposition, je ne manquerais pas de faire appel à toi si tout est bloqué devant moi.

Tout vient à qui sait attendre



Cette discussion est classé dans : click, mouseevent, evt, addeventlistener, clicbouton


Répondre à ce message

Sujets en rapport avec ce message

pb théorique as3 : addeventlistener, bouton et useCapture [ par inaden ] Bonjour,J'étudie le livre de Thibault Imbert "Pratique d'actionScript 3. Je suis au chapitre programmation évenementielle et j'ai beau relire je ne co deplacement d'un clip pour en activer un autre [ par zak2mars ] Bonjour.Je suis débutant en Flash (donc en as3), ce qui ne m'empêche pas de faire un site simple tout en flash.J'ai actuellement un petit souci.En fai AS3 Probleme dans mon slide horizontal [ par valouedna ] Bonjour tout le mondeJe suis en train de réaliser mon portfolio en utilisant le slide horizontale comme navigationDébutant en flash depuis quelques se Affecter un listener à un bouton/clip dynamique [ par babatman ] Voila, je créé dynamiquement des boutons ou des clips et je voudrais rajouter la detection de clic sur un de ces objets...Cependant cela ne fonctionne Code flash [ par justinientrib ] Salut à tous,voilà j'essaye de faire un code actionscript 3.0 sur flash CS3 qui va surement vous sembler simple mais ça marche pas. J'essaye de faire AS3 :: MouseEvent : bug deplacement ver la droite [ par JSBR ] Bonjour,  j'ai bug plutôt étrange avec la librairie MouseEvent d'AS3 (en plus des choix douteux d'adobe.)     Le problème est que lorsque je déplace Drag sur loader [ par Cestmoi ] Bonjour,Je seche sur ce pb... A partir de tutoriaux, j'ai fait ce code simple. Je souhaite charger dynamiquement une image et pouvoir la dragger.// cr video publier en ligne ne se charge pas [ par cambi34 ] Bonjour, Pour mon association, j'ai crée une animation en flash avec plusieur fichier swf. Dans un sous fichiers j'ai intégré une video.FLV, que j'ap un problem de button dans le flashcs4(AS3) [ par coolyalei ] bonjour!une question sur le flashcs4.j'ai fait une carte avec le flashcs4, dans la carte il y a  10 button,je veux c'est appuyer sur chaque un  button AS3: Loader? [ par diabolo7346 ] Bonjour je dois créer un site web entièrement en flash et je rencontre un problème pour ce qui est du menu. Je dois donc utiliser un loader de .swf (o


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version


HTC Magic

Entre 429€ et 429€


Photothèque Nouveau !



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
Temps d'éxécution de la page : 0,359 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.