我有一个使用鼠标事件的功能,它会移除并添加到舞台上的东西:
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();
但是它说参数的数量是错误的。我已经搜遍过了,似乎无法解决这个问题。任何帮助将不胜感激。
答案 0 :(得分:2)
如果您像现在一样致电bgnListener()
,则会出现参数不匹配错误,因为该函数预计会收到MouseEvent
。
如果您希望能够像这样单独调用bgnListener()
,您可以为参数event
定义默认值,可以是null
:
function bgnListener(event:MouseEvent = null)
{
// ...
}