IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ActionScript 3 Discussion :

Probléme de Tween as3


Sujet :

ActionScript 3

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Août 2009
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Probléme de Tween as3
    Codage sous Flash CS3 avec AS3

    Bonjour et mercis d'avance pour votre aide.

    Je développe une petite application en flash dont le but est de présenter la sonorisation d'un DJ.
    Lrincipe est simple : j'ai une image de fond, et des boutons sur les différents éléments qui compose sa sono, lorsque je passe en rollover sur mes bouton, un cadre apparait avec un titre, une description, une image. Et lorsque je suis en ROLLOUT sur le bouton, mon cadre avec tout ses composant disparait.

    Voila le problème : En rollover, pas de problème, je fait apparaitre mon cadre avec ses éléments.
    Mais lorsque je suis en rollout, mon cadre ne veut pas disparaitre... et pourtant je vois bien dans la sortie qu'il arrive a lire la tween !

    Help pls

    Je vous donne le code de l'élément de base (mon cadre conteneur) sans les titre, description, images..

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    import flash.filters.BitmapFilterQuality;
    import flash.events.MouseEvent;
     
    import fl.transitions.easing.Regular;
    import fl.transitions.Tween;
    import flash.events.Event;
     
    import flash.display.DisplayObject;
    import flash.display.Graphics;
    import flash.display.JointStyle;
    import flash.display.LineScaleMode;
    import flash.display.Shape;
    import flash.display.Sprite;
     
    // DECLARATION VARIABLE //
     
    var titrebloc = "jose";
    var descriptionbloc="jose";
    var temp = "av";
    var image = "1.jpg";
     
    var xpositioncadre=300;
    var ypositioncadre=400;
     
     
     
     
    function TitreDescriptionCadreImage ():void
    {       
            ////////////////// Rectangle arrondie pour le sprite conteneur ////////////
            var cadre:Sprite = new Sprite();
            cadre.graphics.beginFill(0*666666,0.8);
            cadre.graphics.lineStyle(3,3*111111,5);
            cadre.graphics.drawRoundRect(0,0,300,300,30);
            cadre.x=300;
            cadre.y=300;
            cadre.name = "cadre";
            cadre.alpha=0;
            this.addChildAt(cadre,5);
     
            if (temp=="av")
     
            {
                    cadre.x=xpositioncadre;
                    cadre.y=ypositioncadre;
                    var t1 = new Tween(cadre, "alpha", Regular.easeIn, cadre.alpha, 1, 0.5, true);
                    var ROLLOVER="tween qui fait apparaitre";       
                    trace(ROLLOVER);
            }
     
            if (temp=="ap")
     
            {       
                    var t2 = new Tween(cadre, "alpha", Regular.easeInOut, cadre.alpha, 0, 0.5, true);
                    var ROllOUT="tween qui fait disparaitre";
                    trace(ROllOUT);
            }
     
                    }
    /////// ACTION BOUTON 1 /////
     
    b_zone1.addEventListener (MouseEvent.ROLL_OVER,avzone1);
    b_zone1.addEventListener (MouseEvent.ROLL_OUT,apzone1);
     
    function avzone1 (pEvt:Event):void
    {       
            //objetconteneur=michel;
            temp="av";
            xpositioncadre=5;
            ypositioncadre=100;
            TitreDescriptionCadreImage();
     
    }
     
    function apzone1 (pEvt:Event):void
    {       
            temp="ap";
            TitreDescriptionCadreImage();
    }

    Le pire, c'est que si j'enleve mon cadre de la fonction, les deux tweens (apparition et disparition) fonctionne très bien, mais j'ai lorsque je change de bouton, la nouvelle image apparait au dessus de l'ancienne, le nouveau titre au dessus de l'ancien etc etc... en somme le cadre garde en mémoire les précendents éléments chargés

    Merci d'avoir pris le temps de lire mon post. Bon codage a tous

  2. #2
    Membre expérimenté Avatar de julien.63
    Profil pro
    balayeur
    Inscrit en
    Décembre 2005
    Messages
    1 348
    Détails du profil
    Informations personnelles :
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : balayeur

    Informations forums :
    Inscription : Décembre 2005
    Messages : 1 348
    Points : 1 311
    Points
    1 311
    Par défaut
    salut
    est ce que tu as essayé avec yoyo() ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    function TitreDescriptionCadreImage ():void
    {       
            var t:Tween;
            ////////////////// Rectangle arrondie pour le sprite conteneur ////////////
            var cadre:Sprite = new Sprite();
            cadre.graphics.beginFill(0*666666,0.8);
            cadre.graphics.lineStyle(3,3*111111,5);
            cadre.graphics.drawRoundRect(0,0,300,300,30);
            cadre.x=300;
            cadre.y=300;
            cadre.name = "cadre";
            cadre.alpha=0;
            this.addChildAt(cadre,5);
     
            if (temp=="av")
     
            {
                    cadre.x=xpositioncadre;
                    cadre.y=ypositioncadre;
                    t = new Tween(cadre, "alpha", Regular.easeIn, cadre.alpha, 1, 0.5, true);
                    var ROLLOVER="tween qui fait apparaitre";       
                    trace(ROLLOVER);
            }
     
            if (temp=="ap")
     
            {       
                    t.yoyo();
                     //var t2 = new Tween(cadre, "alpha", Regular.easeInOut, cadre.alpha, 0, 0.5, true);
                    var ROllOUT="tween qui fait disparaitre";
                    trace(ROllOUT);
            }
    sinon, est ce que tu n'as pas inversé les valeurs dans le second tween ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var t2 = new Tween(cadre, "alpha", Regular.easeInOut, cadre.alpha, 0.5, 0, true);

Discussions similaires

  1. Problème de tween sur mon menu 3d
    Par tibolive dans le forum ActionScript 3
    Réponses: 0
    Dernier message: 10/12/2009, 21h59
  2. Problème de requête AS3
    Par yul57 dans le forum ActionScript 3
    Réponses: 0
    Dernier message: 14/05/2009, 15h56
  3. Problème méthode Tween()
    Par icaboth dans le forum ActionScript 3
    Réponses: 3
    Dernier message: 09/03/2009, 11h05
  4. problème de tween
    Par tidji dans le forum Flash
    Réponses: 2
    Dernier message: 23/03/2007, 16h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo