K3 Blogue 2.0 | Marketing Internet, E-Commerce, E-Communauté, Web 2.0
Actionscript 3 : Attacher sur la scène un movieClip de la librairie d’un swf que vous venez de charger.
Philippe Arseneault, le 1 mars 2007 à 3:44 dans DesignCeci est le premier article que j’écris sur ma transition de l’Actionscript 2 vers l’Actionscript 3. Je devrais en écrire un chaque fois que je réussis à faire un truc qui selon moi devrait en intéresser plus d’un. Je devrais également réécrire pour parler de l’Actionscript 3 en général, de ses avantages et grands changements par rapport à l’Actionscript 2.
Mais je propose aujourd’hui de plonger directement dans le code avec ce
qui permet de charger un fichier swf externe et d’accéder à un
movieClip de sa librairie.
Premièrement, le fichier externe.
Il doit être créer dans la version alpha de Flash 9 afin de pouvoir compiler en Flash 9 avec Actionscript 3.
Il faut se créer un movieClip dans la librairie d’un nouveau document.
On nomme notre movieClip, on coche "Export for Actionscript" et on
donne un nom unique à la classe qui sera créer automatiquement au
moment de la compilation.

On utilise maintenant notre imagination pour créer le contenu du
movieClip. Un gros X mauve dans mon cas (j’aime ça les X mauve).
Et finalement on compile.
Et on arrive dans notre éditeur Actionscript 3.
De mon côté je suis dans un projet Actionscript 3 de FlexBuilder 2.
Voici le code de la classe de l’application avec mes commentaires.
import flash.display.*;
import flash.events.*;
import flash.net.*;
public class Application extends Sprite {
// On cré la variable qui va contenir le "loader" qui va charger le swf
private var _myLoader:Loader;
// Le constructeur
public function Application()
{
//On cré le "loader"
_myLoader = new Loader();
// On ajoute l’événement "Init" avec la méthode à exécuter une fois le swf chargé
_myLoader.contentLoaderInfo.addEventListener(Event.INIT, onLoadInit);
// On charge le swf
_myLoader.load(new URLRequest("myTests.swf"));
}
private function onLoadInit(p_event:Event):void
{
// On récupère le contenu de notre swf (qui est un movieClip) et on l’ajoute sur la scène
_mc = MovieClip(_myLoader.content);
addChild(_mc); importMC();
// On récupère la classe auquel notre movieClip de la librairie est associé
var myObject:Object =
_myLoader.contentLoaderInfo.applicationDomain.getDefinition("McLibrairie");
var myClip:MovieClip = MovieClip(new myObject());
// On peut lui donner quelques propriétés
myClip.x = 50;
myClip.y = 100;
// On l’ajoute sur la scène
addChild(myClip);
}
}
}
Voilà alors on a tout ce qu’il faut pour contrôler notre movieClip!
À bientôt!
Phil
Aucun commentaire »
Flux RSS des commentaires de cet article. TrackBack URI






