Flash ActionScript 3.0 按钮单击全局 MouseEvent.CLICK

Flash ActionScript 3.0 button click over global MouseEvent.CLICK

我想用 ActionScript 3.0 在 Flash 中做下一个:

  1. 全局事件(如果用户用鼠标点击屏幕的任何部分):

addEventListener (MouseEvent.CLICK, nextc);

function nextc (event:MouseEvent): void

{nextFrame();}

  1. 按钮事件(如果用户点击了这个按钮):

returnb54.addEventListener(MouseEvent.CLICK, returnb54a);

function returnb54a(event:MouseEvent):void

{prevFrame();}

但是在具有全局事件和按钮的框架上,单击按钮时没有任何反应。

有什么方法可以使按钮事件优先于全局事件吗?

谢谢。

我创建了一个非常简单的应用程序来测试您的问题(我使用与您定义的相同的名称,以便于理解)。

我改了3点:

1-

  this.stage.addEventListener (MouseEvent.CLICK, nextc);

2-

  function returnb54a(event:MouseEvent):void
  {
      event.stopImmediatePropagation();
      prevFrame();
  }

3-

  function nextc(event:MouseEvent): void
  {
     event.stopImmediatePropagation();
     nextFrame();
  }

方法:stopImmediatePropagation() 阻止处理当前节点和事件流中任何后续节点中的任何事件侦听器。该方法立即生效,影响当前节点的事件监听器。相比之下,stopPropagation()方法直到当前节点中的所有事件监听器处理完成后才会生效。

尝试实施这些更改,看看是否会产生预期的结果。