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

Flash Discussion :

[FLASH MX2004] Test dans une "frame" ?


Sujet :

Flash

  1. #1
    Invité1
    Invité(e)
    Par défaut [FLASH MX2004] Test dans une "frame" ?
    Je n'arrive pas a faire un test tout simple à l'interieur d'une frame....

    Du style...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    //dans la frame 1
     
    If (Var1 == a) {
    Var2 = 0;
    } else {
    Var2 = 1;
    }
    Je comprends pas que le test soit juste ou faux c'est la "fonction" else qui est toujours réalisée

    Merci a plus

  2. #2
    Membre chevronné Avatar de titouille
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    353
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2005
    Messages : 353
    Par défaut
    ta variable Var1, elle est déclarée en quelque part ??


    var Var1 = "test";

    et ta variable a, elle est déclarée en quelque part ??

    var a = "test";


    Et ça devrai passer dans le if, lol

  3. #3
    Invité1
    Invité(e)
    Par défaut
    Non ça n'a pas l'air de venir de la je vais essayer détre plus explicite....

    dans un fichier .txt j'ai une valeur (&ben=123&)
    je la lit
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    var verifvars = new LoadVars();
    verifvars.load("variables.swf");
    Si je teste cette valeur au relachement d'un bouton le test marche.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    on (release) {
    If (verifvars.ben == 123) { 
    Gotoandstop(2); 
    } else { 
    Gotoandstop(3);  
    }}
    Par contre si je la met dans une frame il ne marche pas.

  4. #4
    Membre chevronné Avatar de titouille
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    353
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2005
    Messages : 353
    Par défaut
    C'est surement une question de portée...

    Tu ne peux pas déclarer une variable n'importe ou dans ton anim et y avoir accès n'importe ou ailleurs...

    Je viens de laisser une longue explication sur la portée ici


    Bonne lecture et bon courage, a++

  5. #5
    Invité1
    Invité(e)
    Par défaut
    J'avoue que je suis un peu dépassé... je suis pas au niveau.

    C'est donc a cause de cette histoire de portée entre le bouton et le clip-principal que le test marche pas ?

    Comment je peux faire simplement?

  6. #6
    Membre chevronné Avatar de titouille
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    353
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2005
    Messages : 353
    Par défaut
    Déjà, on affecte un gestionnaire onLoad sur loadVars, pour tester si on a bien reçu quelque chose...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    lv.onLoad = function( success )
    {
    if( success )
    {
    //code
    }
    else
    trace( 'unable to load file...' );
    }
     
    lv.load( ... );

    Ensuite, pour ton problème de portée, en mettant

    this._parent.verifvars dans le code de ton bouton (release), ça devrai jouer... tu dois pointer sur le bon objet, qui se trouve lui sur la scène et non pas dans la portée du bouton.


    A++

  7. #7
    Invité1
    Invité(e)
    Par défaut
    Non ca marche pas...
    En fait ca marche meme pas sur les boutons...

    Le code marche dans tous les clips je met dans la frame1
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    var verifvars = new LoadVars(); 
    verifvars.load("variables.swf");
    Et sur les boutons y'a le test (qui marche)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    on (release) { 
    If (verifvars.ben == 123) { 
    Gotoandstop(2); 
    } else { 
    Gotoandstop(3);  
    }}
    en mettant le meme code dans la frame 1 pourquoi le test marche pas ni sur les boutons ni sur la page principale...
    ca vient du fait que c'est le clip parent? le point exe qui lance les autres clips....

    Je dois etre un attardé de flash

  8. #8
    Membre chevronné Avatar de titouille
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    353
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2005
    Messages : 353
    Par défaut
    Je ne suis pas sur que ça réponde à ta question, mais :

    Si tu veux déclarer une variable dans la portée de la scène, qui doit être accessible durant toute la durée de l'animation, tu dois la créer sur un calque qui s'étend sur toute la longueur de ton animation et ne contenir qu'une image clé sur la frame 1 (ou sur l'image-clé à partir de laquelle tu veux que ta variable soit déclarée)

    Je pense que toi, tu déclare ton objet sur l'image-clé 1 d'une frame, puis tu met du contenu sur l'image-clé 2 de la même frame, ce qui a pour effet d'écraser ce qui y était précédemment.

Discussions similaires

  1. [FLASH MX2004] Comment mettre une pause dans un script
    Par vbcasimir dans le forum Flash
    Réponses: 3
    Dernier message: 16/02/2006, 09h47
  2. Réponses: 5
    Dernier message: 15/04/2005, 14h22
  3. [FLASH MX2004] Architecture d'une classe
    Par matN59 dans le forum Flash
    Réponses: 6
    Dernier message: 13/05/2004, 08h11

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