2009-12-21 62 views
0

我有一个加载外部swf文件的flex应用程序。我使用flash cs4创建了外部swf文件,因此如果这是需要的,我可以向其添加代码。外部swf控制flex应用程序?

下面是我用我的加载外部SWF代码:

//add button swf 
var request:URLRequest = new URLRequest("http://www.yadayada.com/media/but_button.swf"); 
var loader3:Loader = new Loader(); 
loader3.load(request); 
addChild(loader3); 
//position the ZoomControls 

loader3.y = 0; 
loader3.x = 0; 

我可以有我的外部SWF发送点击事件,以我的Flex应用程序?怎么样?

回答

0

是的,你可以做到。

function loadExternal():void { 
    loader3.contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete); 
    loader3.load(request); 
    addChild(loader3); 
}

function onComplete(e:Event):void { var mc:MovieClip = MovieClip(e.target.content); mc.addEventListener(SomeEvent.EVENT_TYPE, onSomeEvent); mc.someExternalFunction(); //external function too can be called }

您需要以某种方式制作外部SWF,以便允许跨脚本编写。所以你需要把Security.allowDomain("*"); // will make it's functions available to any swf loaded from any domain放在外部swf中。

+0

梦幻般的狂欢!我得到了按钮swf加载;然而,然后我遇到了让我的影片剪辑重叠并搞砸我的hitAreas的问题。花了一整天的时间,学习如何指定hitArea属性以及绘制非常好!复杂的形状。喜欢这种语言,但我得到了一个最后期限,我仍然不知道如何工作单身人士课程或发送事件到其他.as文件。 再次感谢! – Phil 2009-12-21 22:41:46

+0

我没有得到你的问题。你能详细解释一下吗? – bhups 2009-12-22 07:14:41

+0

现在我试图加载一个XML文件,但它给我安全沙箱违规。我如何克服这些? – Phil 2010-01-03 10:28:23

相关问题