外部swf控制flex应用程序?

时间:2009-12-21 05:13:42

标签: flex flash actionscript-3 flex4 swfloader

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

以下是我用来加载外部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应用程序吗?怎么样?

1 个答案:

答案 0 :(得分: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。