如何通过AS3加载外部SWF文件,调用外部文件文档类的方法?

一个Flash中通过AS3代码的Loader对象加载另一个SWF文件,并访问其中的文档类中的方法。

简单示例:

主文件:Main.fla, Main.as

被调用的文件:called.swf, Called.as

主文件Main.as:

package{

import flash.display.Sprite;

import flash.net.URLRequest;

import flash.display.Loader;

import flash.events.Event;

public class Main extends Sprite{

    private var loader:Loader;

    public function Main(){

loader = new Loader();

loader.load(new URLRequest("called.swf"));

loader.contentLoadInfo.addEventListener(Event.Complete, loadComplete);

    }

    private function loadComplete(e:Event):void{

      var obj:Object = loader.content; // 通过loader.content获取Called类对象,并赋值给Object对象

      obj.method(); //调用Called对象的method方法

    }

}

}

---------------------输出结果-------------------------

Called对象中的method方法被调用了

--------------------------------------------------------

被调用文件: Called.as

package{

import flash.display.Sprite;

public class Called extends Sprite{

}

public function method():void{

    trace("Called对象中的method方法被调用了");

}

}

posted @ 2010-02-12 10:42  与时俱进  阅读(5167)  评论(0编辑  收藏  举报
友情链接:同里老宅院民居客栈