Swap animations :: supprimer/remplacer
Bonjour,
Récent migrant vers AS3, je réussis à utiliser la classe .Loader pour afficher des swf externes... J'in un swf de départ vide qui charge le premier *.swf, et depuis celui-ci, je voudrais pouvoir le remplacer par un autre, au clic... Le clic c'est que mon code fait se superposer les *swf les uns par-desus les autres sans que le précédent soit effacé. Bref... Que faire?
index.fla:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
| /*var mc=_root.createEmptyMovieClip('container');
loadMovie('stage_3.swf',container);*/
// import des classes nécessaires :
// nous importons les classes necessaires :
import flash.net.URLLoader;
import flash.net.URLRequest;
import flash.net.URLLoaderDataFormat;
import flash.display.Loader;
import flash.display.LoaderInfo;
import flash.events.Event;
import flash.events.ProgressEvent;
import flash.events.IOErrorEvent;
// nous déclarons un objet URLLoader :
var container:URLLoader = new URLLoader ();
// nous créons un objet URLRequest qui contient l'url du fichier :
var adresse:URLRequest = new URLRequest ("stage_3.swf");
// nous lançons le chargement du fichier, en indiquant l'adresse de celui ci par l'objet URLRequest :
container.dataFormat = URLLoaderDataFormat.BINARY;
container.load(adresse);
// définition des événements de l'objet container
container.addEventListener(Event.COMPLETE, finDuChargement);
container.addEventListener(ProgressEvent.PROGRESS, avancement);
container.addEventListener(IOErrorEvent.IO_ERROR, indiquerErreur);
// définition de la fonction éxecutée par l'événement COMPLETE :
// ( déclenchée lorsque le chargement se termine )
function finDuChargement ( event:Event ) {
var contenu = event.target.data;
creerLoader (contenu);
}
// fonction déclenchée à la fin du chargement URLLoader, qui ajoute un Loader sur la scene :
function creerLoader ( datas ) {
var container:Loader = new Loader();
container.loadBytes(datas);
stage.addChild(container);
}
// définition de la fonction éxecutée par l'événement PROGRESS :
// déclenchée à chaque avancement du chargement )
function avancement( event:Event) {
trace(event.target.bytesLoaded+" chargés sur "+event.target.bytesTotal);
}
// fonction indiquant si une erreur de chargmement survient :
function indiquerErreur( event:Event ) {
trace(event);
} |
stage_3.fla:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70
| // import des classes nécessaires :
// nous importons les classes necessaires :
import flash.net.URLLoader;
import flash.net.URLRequest;
import flash.net.URLLoaderDataFormat;
import flash.display.Loader;
import flash.display.LoaderInfo;
import flash.events.Event;
import flash.events.ProgressEvent;
import flash.events.IOErrorEvent;
// nous déclarons un objet URLLoader :
var container:URLLoader = new URLLoader ();
// nous créons un objet URLRequest qui contient l'url du fichier :
//var adresse:URLRequest = new URLRequest ("image.jpg");
// nous lançons le chargement du fichier, en indiquant l'adresse de celui ci par l'objet URLRequest :
container.dataFormat = URLLoaderDataFormat.BINARY;
//container.load(adresse);
// définition des événements de l'objet container
container.addEventListener(Event.COMPLETE, finDuChargement);
container.addEventListener(ProgressEvent.PROGRESS, avancement);
container.addEventListener(IOErrorEvent.IO_ERROR, indiquerErreur);
// définition de la fonction éxecutée par l'événement COMPLETE :
// ( déclenchée lorsque le chargement se termine )
function finDuChargement ( event:Event ) {
var contenu = event.target.data;
creerLoader (contenu);
}
// fonction déclenchée à la fin du chargement URLLoader, qui ajoute un Loader sur la scene :
function creerLoader ( datas ) {
var container:Loader = new Loader();
container.loadBytes(datas);
stage.addChild(container);
}
// définition de la fonction éxecutée par l'événement PROGRESS :
// déclenchée à chaque avancement du chargement )
function avancement( event:Event) {
trace(event.target.bytesLoaded+" chargés sur "+event.target.bytesTotal);
}
// fonction indiquant si une erreur de chargmement survient :
function indiquerErreur( event:Event ) {
trace(event);
}
fleche.addEventListener(MouseEvent.CLICK,onClick);
function onClick(e:MouseEvent):void {
var adresse:URLRequest = new URLRequest ("couloir.swf");
//container.removechild();
container.load(adresse);
}
/*fleche.onRelease=function(){
container.load("couloir.swf");
}*/
/*bureau_1.onRelease=function(){
loadMovie("piece_1.swf",container);
}
bureau_2.onRelease=function(){
loadMovie("piece_2.swf",container);
}*/ |