【问题标题】:How to separate Button Click and Fire Click?如何区分按钮点击和触发点击?
【发布时间】:2015-06-06 14:05:14
【问题描述】:

我有一个启动游戏的按钮,当你点击它时它会初始化游戏

startButton.addEventListener(MouseEvent.CLICK, onStartButtonClick);

我还有一个开火的东西,它应该在你开始游戏后点击开始按钮开枪,然后在你点击时开枪。

stage.addEventListener(MouseEvent.CLICK, fire);

但是,当我单击开始按钮时,它会立即触发。我该如何解决这个问题?

这是我的代码。

public function Game()
    {
        startButton.addEventListener(MouseEvent.CLICK, onStartButtonClick);
    }

    function onStartButtonClick(event: MouseEvent): void
    {
        addEventListener(Event.ENTER_FRAME, loop);
        stage.addEventListener(MouseEvent.CLICK, fire);

        function fire(m: Event)
        {
            //shoot bullet
        }
    }

【问题讨论】:

    标签: actionscript-3


    【解决方案1】:

    这是由事件冒泡引起的。 只需将您的 onStartButtonClick 函数修改为:

    function onStartButtonClick(event: MouseEvent): void
    {
        event.stopPropagation();
        addEventListener(Event.ENTER_FRAME, loop);
        stage.addEventListener(MouseEvent.CLICK, fire);
    

    有关事件冒泡的更多信息CHECK HERE

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-08-06
      • 1970-01-01
      • 1970-01-01
      • 2017-06-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多