全球事件监听器

时间:2013-12-27 16:15:44

标签: actionscript-3 flash

无论在哪个场景或框架中,我都能以任何方式使我的按钮工作。 有什么方法可以将该事件监听器调用到该特定实例的另一个帧?

例如: 我有一个按钮home_btn,我希望这个按钮可以在所有场景中工作,而不需要更改它的实例名称。我已经在第一个场景中添加了一个Event侦听器,但它不起作用, 在另一个框架或场景中。 以下是代码。

home_btn.addEventListener(MouseEvent.CLICK, process_it);

function process_it(event:MouseEvent):void
{
    nextFrame();
}

我不知道如何为我的按钮使用调度事件功能。 //这仅适用于该特定帧。

1 个答案:

答案 0 :(得分:0)

由于您在时间轴中执行此操作,因此如果您放置home_btn.addEventListener(MouseEvent.CLICK, process_it);

在主时间轴的第一帧上,即使您更改为其他帧,也会进行注册。

您可以将该功能保留在现有帧中,因为仍应调用该功​​能。

这与其他框架上的代码相反的原因是因为第1帧是您的时间轴将开始并处理此框架中所需的所有显示项和代码的原因。这是您想要活动的任何函数,变量或侦听器将在应用程序启动时运行和/或存储到内存中,因为它始终在第1帧开始,直到另行指定。如果你有一个不同的框架上的监听器,那么你必须gotoAndStop()到该框架添加监听器(否则你指定你不想添加监听器,直到你的应用程序在框架上)。向第1帧上的显示对象添加侦听器取决于显示对象也在该帧上。