Ne pas recharger un movie clip actif - MX2004

Résolu
Signaler
Messages postés
28
Date d'inscription
mardi 31 août 2004
Statut
Membre
Dernière intervention
4 juillet 2007
-
Messages postés
28
Date d'inscription
mardi 31 août 2004
Statut
Membre
Dernière intervention
4 juillet 2007
-
Bonjour, tout d'abord merci à ce forum pour les informations qui m'apportent de nouvelles connaissances.

Voilà c'est pas compliqué, je charge via un bouton, un movie externe dans un clip conteneur de mon animation avec la méthode loadMovie. J'aimerai savoir si il existe une combine pour que quand mon movie est chargé, il évite de se charger une 2ème fois si l'on reclique sur ce bouton.
Le bouton ne sert qu'a charger le movie en question et n'a pas d'autres fonctions
J'ai cherché pas mal de temps avant de poser cette question mais mes connaissances de flash étant celles d'un simple amateur, je n'ai pas trouvé l'astuce, peut etre est ce simple ?

En tout cas je vous remercie d'avance pour vos réponses ou suggestions.

respectueusement

Olivier

10 réponses

Messages postés
1058
Date d'inscription
jeudi 24 juillet 2003
Statut
Modérateur
Dernière intervention
14 février 2009

je prend un exemple simple

2 boutons bt1 et bt2
il charge respectivement anim1.swf et anim2.swf
//tu crée ton chargeur et tu lui associe un ecouteur
var loader:MovieClipLoader = new MovieClipLoader();
var listener:Object = new Object();
loader.addListener(listener);
//si tu appuis sur bt1 tu charge anim1.swf
this.bt1.onPress = function() {
loader.loadClip("anim1.swf", conteneur);
};
//lorque le chargement est terminer tu désatives le bt1 et rend actif bt2
listener.onLoadComplete = function(target_mc:MovieClip):Void {
bt2.enabled=true;
bt1.enabled=false;
}
//la réciproque
this.bt2 .onPress = function() {
loader.loadClip("anim2.swf", conteneur);
};

listener.onLoadComplete = function(target_mc:MovieClip):Void {
bt2.enabled=false;
bt1.enabled=true;
}



ActionScript Experience
Messages postés
1058
Date d'inscription
jeudi 24 juillet 2003
Statut
Modérateur
Dernière intervention
14 février 2009

tu peux suprimer le boutons à la fin du chargement pas exemples

ActionScript Experience
Messages postés
28
Date d'inscription
mardi 31 août 2004
Statut
Membre
Dernière intervention
4 juillet 2007

Hello, merci pour votre réponse

en fait je me suis peut etre mal exprimé c'est dû à mon inéxpérience... :-) en fait mon bouton fait partie d'une barre de menu, et il sert à charger un clip dans mon animation, j'aimerais juste que quand le clip qu'il a appellé soit chargé, si l'on reclique dessus il ne recharge pas le clip à nouveau.
Messages postés
1058
Date d'inscription
jeudi 24 juillet 2003
Statut
Modérateur
Dernière intervention
14 février 2009

tu désactives le bouton
ici le bouton s'appel bt

var loader:MovieClipLoader = new MovieClipLoader();
var listener:Object = new Object();
loader.addListener(listener);
this.bt.onPress = function() {
loader.loadClip("Ton_Chargement", conteneur);
};
listener.onLoadComplete = function(target_mc:MovieClip):Void {
bt.enabled=false;
}

et pour le réactiver ---> bt.enabled=true





ActionScript Experience
Messages postés
28
Date d'inscription
mardi 31 août 2004
Statut
Membre
Dernière intervention
4 juillet 2007

donc si j'ai bien compris, le code je le mets sur la première image de mon anim, mais je ne saisi pas ou mettre le code pour réactiver le bt.

merci en tout cas de ta rapidité

olivier
Messages postés
28
Date d'inscription
mardi 31 août 2004
Statut
Membre
Dernière intervention
4 juillet 2007

re-hello,
désolé pour le harcellement, j'ai donc collé mon code sur un calque d'action sur ma première frame comme suivant (contact est le nom de mon bouton) :

var loader:MovieClipLoader = new MovieClipLoader();
var listener:Object = new Object();
loader.addListener(listener);
this.contact.onPress = function() {
loader.loadClip("preloader_cont.swf", mc_cont1);
};
listener.onLoadComplete = function(target_mc:MovieClip):Void {
     contact.enabled=false;
}


//
je teste le code et je reçoit les erreurs suivantes, je ne sais pas ce qu'est une opérande...

**Erreur** Séquence main, calque actions, image = 1 :Ligne 8 : L’opérateur '=' doit être suivi d’un opérande
      this.contact.enabled=false;

**Erreur** Séquence main, calque actions, image = 1 :Ligne 9 : }' inattendu
}

Total des erreurs ActionScript : 2 Erreurs signalées : 2

sinon pour la réciprocité des bouton merci bcp

olivier
Messages postés
28
Date d'inscription
mardi 31 août 2004
Statut
Membre
Dernière intervention
4 juillet 2007

eeuh c'est mieux si il est mis en page, avec safari c'est pas top ... désolé


var loader:MovieClipLoader = new MovieClipLoader();
var listener:Object = new Object();
loader.addListener(listener);
this.contact.onPress = function() {
loader.loadClip("preloader_cont.swf", mc_cont1);
};
listener.onLoadComplete = function(target_mc:MovieClip):Void {
     contact.enabled=false;
}

//je teste le code et je reçoit les erreurs suivantes, je ne sais pas ce qu'est une opérande...

**Erreur** Séquence main, calque actions, image = 1 :Ligne 8 : L'opérateur '=' doit être suivi d'un opérande       this.contact.enabled=false;

**Erreur** Séquence main, calque actions, image = 1 :Ligne 9 : }' inattendu }

Total des erreurs ActionScript : 2 Erreurs signalées : 2


sinon pour la réciprocité des bouton merci bcp

olivier
Messages postés
1058
Date d'inscription
jeudi 24 juillet 2003
Statut
Modérateur
Dernière intervention
14 février 2009

parametre de publication -> player7 (ou 8) et AS2.0

la c'est bon normalement





ActionScript Experience
Messages postés
28
Date d'inscription
mardi 31 août 2004
Statut
Membre
Dernière intervention
4 juillet 2007

ok j'avais pas bien formaté le texte, désolé pour tout ce bruit pour rien, je vais tester tout cela et me permettre de revenir en cas de "vrais problèmes" en tout cas merci d'avoir passé un moment sur mon cas...

respect

Olivier
Messages postés
28
Date d'inscription
mardi 31 août 2004
Statut
Membre
Dernière intervention
4 juillet 2007

il va falloir que j'envisage sérieusement un cours flahs au niveau action script....

en tout cas flash... ben c'est merveilleux...

olivier