ActionScript EventListeners的问题

时间:2012-12-13 11:12:47

标签: actionscript-3 event-listener

我正在尝试将2个函数放在1个事件上。 通过单击鼠标左键,您可以使方形的可见性变为false和true。但它只能工作一次。它在第一次单击时消失,并在第二次单击时重新出现。之后,它不再有效。如何使它即使在使用后也不断读取代码? 这是我的代码:

var poop = true;

stage.addEventListener(MouseEvent.CLICK, dissappearsquare)
function dissappearsquare(evt:MouseEvent):void
{
if(poop == true)
{
square2.visible = false;
poop = false;
}
stage.addEventListener(MouseEvent.CLICK, dissappearsquare1)
function dissappearsquare1(evt:MouseEvent):void
{
if(poop == false)
{
    square2.visible = true;
    poop = true;
}
 }
 }
 }

我希望我提供了足够的信息,谢谢你的任何意见。

1 个答案:

答案 0 :(得分:0)

有两个EventListener,你可以同时执行它们,以便一个覆盖另一个的动作。

你只需要一个,更简单:

stage.addEventListener(MouseEvent.CLICK, dissappearsquare)
function dissappearsquare(evt:MouseEvent):void
{
     square2.visible = !square2.visible
}

这意味着:

stage.addEventListener(MouseEvent.CLICK, dissappearsquare)
function dissappearsquare(evt:MouseEvent):void
{
     if (square2.visible == true) {
         square2.visible = false
     }
     else if (square2.visible == false) {
         square2.visible = true
     }
}