如何在我的flex应用程序的swfLoader中加载的swf文件中调用actionscript函数?

时间:2010-11-18 15:39:07

标签: flex actionscript air

我有一个swf文件sample.swf,它在Main.as中有其actionscript类。此Main.as具有声明为public的各种对象。例如,让我们考虑MyData类的对象myData(在MyData.as中)。

我正在使用swfLoader在我的AIR应用中加载此swf文件。我想知道如何使用swfLoader.loaderInfo.content访问myData.func()。

提前致谢...:)

2 个答案:

答案 0 :(得分:2)

在你的init处理程序中,它应该是这样的:

function myLoadHandler( e:Event )
{
    MyData( e.target.content.myDataInstance ).func();
}

其中myLoadHandlerEvent.INIT事件的事件处理程序(COMPLETE在加载所有字节时被触发,在初始化SWF之后触发INIT并且会员可以访问),myDataInstance是您孩子SWF中MyData个实例的公开引用。

答案 1 :(得分:0)

我以前做过这个。我不记得数据的确切路径,但找到的方法是在flex中使用调试器。为加载器添加Event.Complete事件,并在您调用的完整函数中添加断点。然后将swfLoader.loaderInfo.content添加到表达式监视列表中,并开始向下钻取以查找您要查找的内容。记下路径并尝试在测试函数中调用它。