begin process at 2012 02 10 12:21:52
  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é. unBouton.addEventListener(MouseEvent.CLICK, onclick(Event, String)); Impossible ? [ par Okutsuko ] Bonjour tout le monde, Je rencontre actuellement un petit problème en AS3, j'ai fais une boucle pour créer plusieurs boutons, et je veux ajouter des as3 petit souci de code [ par morpheus1207 ] Bonjours, Une question très bête, j'ai un clip qui se nome menu sur l'image 1 de la scene principal a l'interieur j'ai fait un bouton avec se scripts 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 drag and drop image uploadé [ par trustmahori ] salut à tous, j'ai un soucis, je n'arrive pas a faire un drag and drop sur mon image importé. voici le code que j'ai fait, il m'importe bien l'image, drag and drop [ par trustmahori ] bonjour, je reposte ma demande. j'ai un soucis sur le drag and drop de cette image uploadé. pour le script de chargement, pas de soucis, par contre l' Problème code AS3 collision Help plz ! [ par Irokoi ] Bonjours tout le monde, Je réalise une animation en AS3 sur laquelle je bloque, je voudrais que lorsque mon carré entre en collision avec un autre il Aide, grand débutant en galère [ par Kaelyn ] Bonjour (ou bonsoir c'est selon) J'ai réalisé un site en HTML avec du flash dedans. Grossièrement le site est une liste de noms associés à des dates.


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

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 : 1,248 sec (3)

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