Forum de discussion
Forum « Flash et Shockwave » (archives)
Re: Remerciements et précisions chargement avec createEmptyMovieClip
Envoyé: 27 décembre 2003, 10h42 par Oznog
On va faire deux exemple simple pour comprendre quelques principes.
Première observation, le comportement "load" et "loadMovie".
1. Céer un nouveau symbole de type "movieClip". On ne met rien dessus et on le glisse tout simplement sur la scène EN S'ASSURANT DE LUI DONNER UN NOM D'INSTANCE. Par exemple "mcVide".
2. En prenant bien soin de sélectionner l'instance de ce symbole dsur la scène, on ajoute le code suivant dans la fenêtre "Action Acript".
onClipEvent (load) {
trace('avant tout');
}
onClipEvent (data) {
trace('image chargée');
}
3. Sélectionner le premier cadre (frame) et ajouter le script dans la fenêtre "Action Script" :
trace('DÉBUT');
loadMovie("http://www.fleuve.net/cp/i014001.jpg","mc");
trace('PENDANT!');
stop();
Exécuter le script pour voir le déroulement de cette simple opération.
DÉBUT
PENDANT!
avant tout
avant tout
image chargée
Bon, le "load" se fais deux fois, (il reviendrait d'ailleurs sans scèce si le loadMovie était là). Mais dans l'ensemble s'est pas mal stable.
Maintenant avec la méthode du "createEmptyMovieClip" très efficace car elle permet de détruire le "enterFrame".
Il suffit de copier ce code dans la fenêtre "Action Script" il n'a besoin d'aucun objet.
trace('DÉBUT');
this.createEmptyMovieClip('mcImage', 1);
this.mcImage.loadMovie('http://www.fleuve.net/cp/i033001.jpg');
this.onEnterFrame = function() {
nCharge = this.mcImage.getBytesLoaded();
nTotal = this.mcImage.getBytesTotal();
nPourcent = Math.round((nCharge/nTotal)*100);
trace('en chargement... '+nPourcent+' %');
if (nCharge > 1 && nCharge >= nTotal) {
trace('chargé');
delete this.onEnterFrame;
}
}
trace('PENDANT!');
Tu devrais pouvoir faire beaucoup avec ça.
Ciao
Oznog
Réponses
|