actionscript project compiled as swf. how can i load it with flex and use the functions it provides?

338 Views Asked by At

I have an ActionScript project with several classes that i compiled as an swf using Adobe Flex (by creating an actionscript project and clicking on export -> release build)

Is there a way to load that swf so i'll be able to load it's classes and use them on a different swf ?

i know i can use the following code to load an swf file: var loader:Loader = new Loader();

loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onLoaded);

loader.load(new URLRequest("game.swf"));
addChild(loader);

(from Loading a SWF into an ActionScript 3 project (Flex Builder)) but how can i actually create an instance of the classes i have in that swf ?

thanks!

3

There are 3 best solutions below

0
On BEST ANSWER

Have a look at this.

0
On

Take a look at this URL from the Adobe LiveDocs site (Look at the section titled 'Embedding SWF files').

0
On

You can use the function getDefinition for example to get a reference to the class to istanciate.

It will depend how your swf is loaded in what context.

//check if the class exist into applicationDomain
if (applicationDomain.hasDefinition(name)) {
  // get the class reference from applicationDomain
  var clazz:Class=Class(applicationDomain.getDefinition(name));
 // and instanciate
 var myInstance:XXX=(new clazz()) as XXX;
}