cibler une classe d'un autre swf sur un swf principal
Salut !
Je chercher à utiliser la classe d'un swf (une fois que je l'ai chargé avec un Loader()) que je voudrais attacher sur mon swf principal.
Par exemple j'ai un main.swf :
Et un Multimédia .swf :
Si dans multimédia j'ai une classe Ballon
Comment puis-je faire pour instancier cette classe sur mon swf principal ?
On m'a dis que la classe ci dessous résolvais le problème, seulement je n'arrive pas à l'utiliser correctement.
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
|
package {
class ClassLoader extends EventDispatcher {
public static var CLASS_LOADED:String="classLoaded";
public static var LOAD_ERROR:String="loadError";
private var loader:Loader;
private var swfLib:String;
private var request:URLRequest;
private var loadedClass:Class;
public function ClassLoader() {
loader=new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE,completeHandler);
loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR,ioErrorHandler);
loader.contentLoaderInfo.addEventListener(SecurityErrorEvent.SECURITY_ERROR,securityErrorHandler);
}
public function load(lib:String):void {
swfLib=lib;
request=new URLRequest(swfLib);
var context:LoaderContext=new LoaderContext ;
context.applicationDomain=ApplicationDomain.currentDomain;
loader.load(request,context);
}
public function getClass(className:String):Class {
try {
return loader.contentLoaderInfo.applicationDomain.getDefinition(className) as Class;
} catch (e:Error) {
throw new IllegalOperationError(className+" definition not found in "+swfLib);
}
return null;
}
}
} |
Si qq'un à une idée, ou une autre solution je suis a votre écoute !
Merci !
@+