0

我有一个使用鼠标事件的函数,它可以在舞台上删除和添加东西:

beginBut.addEventListener(MouseEvent.CLICK, bgnListener);
function bgnListener (event:MouseEvent) {
    removeEventListener(Event.ENTER_FRAME, setScreen);
    removeChild(beginBut);
    removeChild(myWord);

    healthBar.addEventListener(Event.ENTER_FRAME, healthLose);
    ball.addEventListener(Event.ENTER_FRAME, moveBall);
    myGem.addEventListener(Event.ENTER_FRAME, addGem);
    myScore.addEventListener(Event.ENTER_FRAME, scoreCount);
    healthBar.width+=1000;

}

但是,在发生其他一些事情之后,我需要再次发生此事件。我已经添加了 beginBut 但是当我使用

beginBut.addEventListener(MouseEvent.CLICK, bgnListener);

beginBut当添加回来的功能发生而不是当我实际点击时,事件会自动添加和删除东西beginBut。我也试过

bgnListener();

但它说参数数量错误。我已经到处搜索了,我似乎无法解决这个问题。任何帮助将不胜感激。

4

1 回答 1

2

如果你bgnListener()像现在这样调用,你会得到一个参数不匹配错误,因为函数期望接收一个MouseEvent.

如果您希望能够bgnListener()像这样自行调用,您可以为您的参数定义一个默认值event,它可以是null

function bgnListener(event:MouseEvent = null)
{
    // ...
}
于 2013-01-30T05:22:18.607 回答