begin process at 2010 03 17 08:24:19
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Flash / Flash MX

 > 

Scripts

 > 

ActionScript

 > 

petit pb de variable en as3


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

petit pb de variable en as3

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ée 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 Besoin d'aide pour reécrire un code [ par mikile ] Bonjour à tous!![^^happy13] Suite à l'achat d'un site, j'essaie peu à peu de le modifier. Malheureusement, je n'avance plus à cause d'un bout de code TypeError: Error #1010: Un terme n'est pas défini et n'a pas de propriété. [ par Touvok ] Bonjour, J'ai débuté il y a peut AS3. J'ai le message d'erreur suivant : TypeError: Error #1010: Un terme n'est pas défini et n'a pas de propriété. Error #1010 ..... [ par olyve911 ] Bonjour à tous et à toutes, voila, je suis complement bloqué, et je m'arrache les cheveux depuis 3jours et 3nuits. Je suis debutant, et je construit Débutant: Message d'erreur script AS3 avec le composant SlideshowPro pour Flash [ par SaulHudson ] Bonjour, je suis un débutant en AS3 et [b]j'utilise slideshow pro pour flash pour mes diporama (c'est un composant qui s'installe et s'utilise dans), Aide site en flash / FLASH CS4 , problème de priorité [ par lydjensky ] Bonjour ou Bonsoir à tous/toutes, Je vous contacte car je rencontre un petit soucis quant à la construction d'un site très simple en flash. Je suis Soucis sur un codage de webradio en flash actionscript 3 [ par Driven ] Bonjour je me permet de vous écrire car je but depuis un moment sur un codage webradio en flash. J'ai trouvé sur le net un poste webradio mais voila l 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 probleme etat rollover [ par vilkoyote ] Bonjour a tous amis flash codeurs. Voila j essaye de mettre en place un petit flash contenant une map de la suisse interactive. Je ne débute que depui


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Photothèque

 
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,452 sec (3)

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