访问嵌入式SWF中的变量?

时间:2011-08-14 23:10:21

标签: actionscript-3 flash

我正在编写一个AS3应用程序,它将外部SWF文件加载到我的舞台中的影片剪辑中。我需要读取嵌入式SWF中的变量。我想我可以通过bgURL做到这一点,但我无法弄清楚如何。

如何读取嵌入式SWF中的变量?

var bgLoader:Loader = new Loader();

var bgURL:URLRequest = new URLRequest("file.swf");
bgLoader.load(bgURL);
addChild(bgLoader);

1 个答案:

答案 0 :(得分:1)

这就像trace(MovieClip(bgLoader.content).Player.played);,但请确保您访问Event.COMPLETE处理程序中的内容:

bgLoader.contentLoaderInfo.addEventListener(Event.COMPLETE,bgLoaded);
function bgLoaded(event:Event):void{ trace(MovieClip(bgLoader.content).Player.played) }

bgLoader.content返回一个DisplayObject,但您需要将内容作为MovieClip访问。为此,请使用casting

这假设你的外部swf也是AS3(好点Teo.sk!) 这一位:_root.Player.played看起来像AS2。很遗憾你无法访问 变量直接形成一个加载的AS2电影。 不过,您可以使用Local Connection类来回传送变量 AS2和AS3。幸运的是,格兰特斯金纳写了一个名为SWFBridge的小工具。 使这更容易