AS3 dispatchEvent父播放头位置

时间:2012-07-30 14:54:46

标签: actionscript-3 parent-child dispatchevent

我最近接受了一个项目,它正在将SWF加载到子SWF中,这不仅非常混乱,而且调试速度慢且难以理解。

因此,我正在尝试找到在父子SWF(气泡)之间来回调用的正确程序。我认为这是解决这个问题的正确方法:加载/卸载和移动播放头。

我听说dispatchEvent()函数是从child到parent使用的?但我不确定这是如何解释的。我是否需要在父级中使用addEventListener()来侦听dispatchEvent()?

你能告诉我如何告诉家长SWF将播放头移动到父时间线上的另一个位置吗?

我会用吗?:

child_btn.AddEventListener(MouseEvent.MOUSE_DOWN, movetolabel)

function movetolabel() {
dispatchEvent(parent.gotoAndStop("label"));
}

1 个答案:

答案 0 :(得分:0)

在加载的SWF的主类中:

// The 3rd parameters enables capture of bubbling events
childBtn.addEventListener(MouseEvent.MOUSE_DOWN, childBtn_mouseDownHandler);

function childBtn_mouseDownHandler(event:MouseEvent) {
    dispatchEvent(new Event("someSignal"));
}

在父SWF的主要类中:

childLoader.content.addEventListener("someSignal", childLoader_someSignalHandler);

function childLoader_someSignalHandler(event:Event):void {
    gotoAndStop("label");
}