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 :

Pourquoi ma variable perd sa valeur ?


Sujet :

Flash

  1. #1
    Membre à l'essai
    Inscrit en
    Décembre 2006
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 22
    Points : 10
    Points
    10
    Par défaut Pourquoi ma variable perd sa valeur ?
    Bonjour tous

    Le code suivant fonctionne bien mais le trace (tt+"test"); me renvoie undefined. Pourquoi la variable tt , sortie des {} perd sa valeur et que dois-je écrire pour lui donner la valeur de totalBytes ?



    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
    var globale:Number = tt;
    var monClip_mcl = new MovieClipLoader();
    var monEcouteurDeClip = new Object();
    monEcouteurDeClip.onLoadStart = function(cible) 
      { trace("Demande  enregistrée");} 
    
    monEcouteurDeClip.onLoadProgress = function(cible, loadedBytes, totalBytes) 
      { tt=totalBytes;
      trace("Octets chargés = " + loadedBytes);      // Bon affichage
      trace("Octets à charger = " + tt);}           // Bon affichage
    
      trace (tt+"test");     //renvoie     undefinedtest
    
      this.createEmptyMovieClip("container",1);
     monClip_mcl.addListener(monEcouteurDeClip);
     monClip_mcl.loadClip(("G/T" + (b) + ".jpg"), this.fg);

    J'espere être assez clair
    Merci à vous

  2. #2
    Membre confirmé Avatar de nounetmasque
    Inscrit en
    Janvier 2003
    Messages
    494
    Détails du profil
    Informations forums :
    Inscription : Janvier 2003
    Messages : 494
    Points : 570
    Points
    570
    Par défaut
    Essaye le code suivant :
    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
    var tt : Number = 0;
    var monClip_mcl = new MovieClipLoader();
    var monEcouteurDeClip = new Object();
    monEcouteurDeClip.onLoadStart = function(cible){ 
         trace("Demande enregistrée");
    }
     
    monEcouteurDeClip.onLoadProgress = function(cible, loadedBytes, totalBytes){ 
          tt=totalBytes;
          trace("Octets chargés = " + loadedBytes);
          trace("Octets à charger = " + tt);
    } 
     
    trace (tt + "test");
     
    this.createEmptyMovieClip("container",1);
    monClip_mcl.addListener(monEcouteurDeClip);
    monClip_mcl.loadClip(("G/T" + (b) + ".jpg"), this.fg);

  3. #3
    Membre à l'essai
    Inscrit en
    Décembre 2006
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 22
    Points : 10
    Points
    10
    Par défaut
    Merci Nounetmasque,
    mais hélas non tt reste partout =0

  4. #4
    Membre expérimenté Avatar de Lorenzo77
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    1 472
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 472
    Points : 1 537
    Points
    1 537
    Par défaut
    ben c'est logique, quand tu appelles le trace la var est ini a 0 !

    le changement de valeur ne se fait que lors du 1er appel a onLoadProgress et celui ci merdouille complet en local ...

  5. #5
    Membre à l'essai
    Inscrit en
    Décembre 2006
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 22
    Points : 10
    Points
    10
    Par défaut
    Et c'est possible de résoudre mon pb ?
    une autre classe ?

    Je rame là .

  6. #6
    Membre expérimenté Avatar de Lorenzo77
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    1 472
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 472
    Points : 1 537
    Points
    1 537
    Par défaut
    alors fais le trace de ton tt dans un onLoadInit ou dans un onLoadStart(pas certain que onLoadProgress sera déja appellé)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    monEcouteurDeClip.onLoadInit = function(cible){ 
          trace("ca va fonctionner ? "+tt+" ?");
    }

  7. #7
    Membre à l'essai
    Inscrit en
    Décembre 2006
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 22
    Points : 10
    Points
    10
    Par défaut
    Merci Lorenzo mais mon pb reste le même qu'avec LoadProgress

    tt s'affiche correctement tant qu'il est dans les {} de la fonction , mais quand

    je veux utiliser sa valeur ailleurs dans le script,il est "undefined".

    Comment faire pour que la cette variable soit utilisable pour une comparaison


    par exemple ?


    Merci d'avance

  8. #8
    Membre expérimenté Avatar de Lorenzo77
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    1 472
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 472
    Points : 1 537
    Points
    1 537
    Par défaut
    tu veux dire que ce code ne fonctionne pas ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    monEcouteurDeClip.onLoadInit = function(cible){ 
          trace(tt > 50);// comparaison
    }

  9. #9
    Membre à l'essai
    Inscrit en
    Décembre 2006
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 22
    Points : 10
    Points
    10
    Par défaut
    Je voudrais ecrire qque chose comme :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if tt>100  {
    }
    else  {
    }

  10. #10
    Membre expérimenté Avatar de Lorenzo77
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    1 472
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 472
    Points : 1 537
    Points
    1 537
    Par défaut
    je commence a me poser des questions
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    monEcouteurDeClip.onLoadInit = function(cible){
      if tt>100 {
      }else {
      }
    }
    la variable tt doit etre correctement définie avec la valeur qui t'interesse pour pouvoir l'utiliser, tu peux pas faire de comparaison tant qu'elle est a 0 ou undefined

  11. #11
    Membre à l'essai
    Inscrit en
    Décembre 2006
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 22
    Points : 10
    Points
    10
    Par défaut
    t'enerve pas Lorenzo, c'est bon...
    en fait je dois mal m'exprimer.Mon tt j'en avais besoin en dehors de ces P.. de crochets . Une fois affiché dans mon trace , je croyais pouvoir utiliser ce même tt après dans une autre fonction de bouton.
    là ça marche. J'ai pas tout compris , mais bon . Avec le temps ....

    Merci Lorenzo pour ton aide

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [PHP 5.3] Variable perd sa valeur en sortie de if !
    Par CinePhil dans le forum Langage
    Réponses: 3
    Dernier message: 11/07/2012, 02h31
  2. [XL-2007] Je perds ma valeur de variable
    Par eliot.raymond dans le forum Macros et VBA Excel
    Réponses: 22
    Dernier message: 26/06/2009, 17h10
  3. Réponses: 2
    Dernier message: 20/04/2009, 11h46
  4. Réponses: 6
    Dernier message: 08/07/2007, 17h29
  5. Variable qui perd sa valeur
    Par thierry-69007 dans le forum Delphi
    Réponses: 5
    Dernier message: 14/12/2006, 13h18

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