有没有办法在加载的SWF文件中调用函数? (A)加载另一个.swf文件(B)...我只想把B看作是将任何其他实例添加到我的类中的.swf“A” ...访问加载的.swf文件中的函数?
有重铸 “装载机” .swf文件中的类的名称:
加载.swf文件类:
package src {
import flash.display.MovieClip;
public class LoadedSWF extends MovieClip {
public function LoadedSWF() {
}
public function helloWorld():void
{
trace("hello world from loaded swf!");
}
}
}
主要类:
package src {
import flash.display.Loader;
import flash.net.URLRequest;
import flash.display.MovieClip;
import flash.events.Event;
public class Main extends MovieClip {
private var loader:Loader;
public function Main() {
loadSWF("LoadedSWF.swf")
}
private function loadSWF(url:String):void {
var urlRequest:URLRequest = new URLRequest(url);
loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onLoaded, false, 0, true);
loader.load(urlRequest);
addChild(loader);
}
private function onLoaded(e:Event):void {
var target:LoadedSWF = e.currentTarget.loader.content as LoadedSWF;
trace(target);
target.helloWorld();
addChild(target);
}
}
}
只是为了清楚起见,这不是一个Flex具体的解决方案的建议的示例代码。事实上,这里没有一个代码是特定于Flex的,并且是直接的ActionScript 3,它将在没有导入Flex库的情况下进行编译。 – Aaron 2010-09-22 03:54:47
这有助于很多,谢谢。我拿着target_mc的例子,并用我的.swf类名称重写它,它工作! – redconservatory 2010-09-22 12:28:18
以上经修改的版本... – redconservatory 2010-09-22 12:29:33