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 MX] Une barre de chargement qui ne bouge pas beaucoup


Sujet :

Flash

  1. #1
    Rédacteur

    Avatar de khayyam90
    Homme Profil pro
    Architecte de système d’information
    Inscrit en
    Janvier 2004
    Messages
    10 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Architecte de système d’information

    Informations forums :
    Inscription : Janvier 2004
    Messages : 10 369
    Points : 40 164
    Points
    40 164
    Par défaut [FLASH MX] Une barre de chargement qui ne bouge pas beaucoup
    bien le bonjour,

    j'essaie de faire une sorte de barre de chargement
    Elle est très rudimentaire, puisqu'il s'agit d'un rectangle dont je souhaite faire varier le _xscale.

    sur la première frame j'ai donc mis le script suivant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    var l=this.getBytesLoaded(); 
    var t=this.getBytesTotal(); 
     
    _root["ma_barre"]._xscale=100*l/t;
     
    if (l<t) gotoAndPlay(1); // on boucle sur la première frame
    mais ma barre ne change jamais de _xscale. Je ne vois pas trop ce qui ne va pas ...

  2. #2
    Rédacteur

    Avatar de arnolem
    Profil pro
    Inscrit en
    Février 2005
    Messages
    2 856
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2005
    Messages : 2 856
    Points : 6 114
    Points
    6 114
    Par défaut
    _root["ma_barre"]._xscale=100*l/t;
    ta syntaxe c'est pas plutot

  3. #3
    Rédacteur

    Avatar de khayyam90
    Homme Profil pro
    Architecte de système d’information
    Inscrit en
    Janvier 2004
    Messages
    10 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Architecte de système d’information

    Informations forums :
    Inscription : Janvier 2004
    Messages : 10 369
    Points : 40 164
    Points
    40 164
    Par défaut
    j'utilise déjà d'autres instructions du type _root[...] qui marchent très bien ... mais dans le doute j'ai essayé, et .... sans succès

  4. #4
    Expert éminent

    Avatar de freegreg
    Profil pro
    Inscrit en
    Août 2002
    Messages
    4 376
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2002
    Messages : 4 376
    Points : 8 779
    Points
    8 779
    Par défaut
    Salut,

    Je confirme que la syntaxe à crochet est correcte. Elle est très pratique lorsque l'on crée des objets dynamiquement avec un nom incrémenté et que l'on veut pouvoir les cibler. Ici ce n'est pas nécessaire

    Sinon pour revenir au pb, pourquoi fais tu une boucle ?

    Essaie :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    _root.onEnterFrame  = function () {
       var total = _root.getBytesTotal();
       var charge = _root.getBytesLoaded();
       if( charge >= total) {
          ma_barre._xscale=100*l/t;
          delete _root.onEnterFrame;
       }	
    }

  5. #5
    Rédacteur

    Avatar de khayyam90
    Homme Profil pro
    Architecte de système d’information
    Inscrit en
    Janvier 2004
    Messages
    10 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Architecte de système d’information

    Informations forums :
    Inscription : Janvier 2004
    Messages : 10 369
    Points : 40 164
    Points
    40 164
    Par défaut
    je ne comprends pas très bien ce bout de code.
    on crée une fonction qu'on associe à l'évènement onEnterFrame
    on affecte les infos nécessaires aux variables
    on teste les infos
    si tout est chargé, on modifie la barre
    et on supprime l'action associée à l'évènement onEnterFrame

    Je ne comprends pas comment l'animation pourra rester sur la première image sans faire de boucle. Peux-tu m'éclairer ?

  6. #6
    Expert éminent

    Avatar de freegreg
    Profil pro
    Inscrit en
    Août 2002
    Messages
    4 376
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2002
    Messages : 4 376
    Points : 8 779
    Points
    8 779
    Par défaut
    Re

    en fait, je me suis un peu gourré pour la barre (fait en live ).
    Pour qu'il y ait un interêt faut qu'elle progresse à chaque passage dans onEnterFrame
    Je modifie et comme je pense que tu as plusieurs frames, je rajoutes 2 trucs.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    _root.stop();
    _root.onEnterFrame  = function () {
       var total = _root.getBytesTotal();
       var charge = _root.getBytesLoaded();
       ma_barre._xscale=100*l/t; //A chaque passage, la barre progresse
       if( charge >= total) {
          delete _root.onEnterFrame;
          this.play();
       }   
    }
    Tout d'abord tu arretes ton animation sur la première frame.
    Ensuite par l'evenement onEnterFrame, tu lui dis de s'écouter lui-même.
    Le programme boucle sans arrêt sur la même frame.
    Lorsque le telechargement est fini, tu lui dis d'arreter de d'écouter puis tu le fais avancer.

    je ne suis pas sûr d'être plus clair! enfin j'espère quand même

  7. #7
    Rédacteur

    Avatar de khayyam90
    Homme Profil pro
    Architecte de système d’information
    Inscrit en
    Janvier 2004
    Messages
    10 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Architecte de système d’information

    Informations forums :
    Inscription : Janvier 2004
    Messages : 10 369
    Points : 40 164
    Points
    40 164
    Par défaut
    si si, maintenant c'est beaucoup plus clairement clair.

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

Discussions similaires

  1. Barre de chargement qui ne commence pas à 0%
    Par kyfr59 dans le forum ActionScript 3
    Réponses: 1
    Dernier message: 04/04/2011, 14h00
  2. Réponses: 0
    Dernier message: 31/10/2007, 14h05
  3. [Débutant] Comment faire une barre de chargement
    Par Alucard9800XT dans le forum Interfaces Graphiques
    Réponses: 2
    Dernier message: 23/04/2007, 22h04
  4. Réponses: 7
    Dernier message: 26/01/2007, 00h39
  5. Faire une barre de chargement
    Par krolineeee dans le forum EDT/SwingWorker
    Réponses: 7
    Dernier message: 22/08/2006, 10h31

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