actionscript 3.0函数mouseevent事件处理程序

时间:2013-01-30 05:03:23

标签: actionscript-3 flash event-handling mouseevent addchild

我有一个使用鼠标事件的功能,它会移除并添加到舞台上的东西:

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();

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

1 个答案:

答案 0 :(得分:2)

如果您像现在一样致电bgnListener(),则会出现参数不匹配错误,因为该函数预计会收到MouseEvent

如果您希望能够像这样单独调用bgnListener(),您可以为参数event定义默认值,可以是null

function bgnListener(event:MouseEvent = null)
{
    // ...
}