Actionscript 3 uload儿童从自身swf

Actionscript 3 uload儿童从自身swf,actionscript-3,flash,Actionscript 3,Flash,我正在尝试用flash cs5,as3构建一个游戏。游戏将有一个主板(mainboard.swf),从那里我可以选择我想玩的游戏(每次加载不同的swf文件)。我的问题是,我无法关闭孩子的swf。我写的代码是: 主板 在puzzle.fla中,我有一个“退出”按钮,其代码为: exit_btn.addEventListener(MouseEvent.CLICK, closeSWF); function closeSWF(event:MouseEvent):void { dispatchE

我正在尝试用flash cs5,as3构建一个游戏。游戏将有一个主板(mainboard.swf),从那里我可以选择我想玩的游戏(每次加载不同的swf文件)。我的问题是,我无法关闭孩子的swf。我写的代码是:

主板

在puzzle.fla中,我有一个“退出”按钮,其代码为:

exit_btn.addEventListener(MouseEvent.CLICK, closeSWF);

function closeSWF(event:MouseEvent):void {
    dispatchEvent(new Event('unloadGame', true)); 
}
据我所知,这是我必须使用的方法,但它不起作用*退出按钮*不起任何作用。。有人能帮忙吗?我做错什么了吗???

更换

gameLoader.contentLoaderInfo.addEventListener('unloadGame', unloadSWFGame);     


contentLoaderInfo仅用于事件。对于鼠标事件,请始终使用显示列表元素。

谢谢您的帮助。虽然我收到一条错误消息:“TypeError:error#1009:无法访问空对象引用的属性或方法”,但它确实有效。你知道为什么吗?其余的代码看起来正常工作,这个错误来自其他地方)这意味着你试图调用方法或设置/获取对象的属性,该属性为null。在这个更改之后,你的方法开始工作。我已经检查了上面的所有代码,没有Null对象引用异常,因此我假设还有另一个代码可能导致此错误。顺便说一句,即使在puzzle.swf中,此错误也可能发生,例如,如果有一些EnterFrame侦听器并调用该阶段的某些属性,在将其从puzzle.swf中的主板阶段删除后,该错误将为Null。尝试调用gameLoader.UnloadeAndStop而不是unload,这将停止puzzle.swf中的所有代码,并可以防止出现错误。
gameLoader.contentLoaderInfo.addEventListener('unloadGame', unloadSWFGame);     
gameLoader.addEventListener('unloadGame', unloadSWFGame);