0

在我的 AS3 代码中,我添加了这个简单的 EventListener:

addEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler);

没有错误或其他任何东西,但是当我在 mouseMoveHandler 中跟踪某些内容时,它不会将某些内容导出到我的控制台

protected function mouseMoveHandler(event:MouseEvent):void
        {
            trace("mouseMoved")
        }

首先我觉得这个问题应该没那么难,我怀疑这和舞台有关(addEventListener 不在最前面)。当我用谷歌搜索它时,我发现了一些关于冒泡的信息,但这仅适用于 dispatch Event 还是?预先感谢您的帮助!

4

1 回答 1

1

舞台本身不会发送 mouseMove - 实际上我不知道。你很少直接在舞台上工作。尽管正如预期的那样,它对孩子有效。

package
{
  import flash.display.Sprite;
  import flash.events.MouseEvent;

  public class TheMouse extends Sprite
  {
    public function TheMouse()
    {
      addEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler);

      const background:Sprite = new Sprite();
      background.graphics.beginFill(0);
      background.graphics.drawRect(0, 0, 100, 100);
      background.graphics.endFill();
      addChild(background);
    }

    private function mouseMoveHandler(event:MouseEvent):void
    {
      trace('mouseMoveHandler');
    }
  }
}
于 2012-06-09T17:31:56.550 回答