【问题标题】:How to make an On/Off Function如何制作开/关功能
【发布时间】:2014-04-06 20:31:46
【问题描述】:

当我在舞台上的任意位置单击时,它会调用一个函数来更改一个变量的值。怎样才能让它在我再次点击时变回原来的值?

public function Example() {
(...)
Modifier = 1;
stage.addEventListener(MouseEvent.CLICK, Happening);
}

public function Happening(event:Event) {
Modifier = 4;
}

【问题讨论】:

    标签: actionscript-3 events click mouseevent flashdevelop


    【解决方案1】:

    保留一个单独的布尔变量怎么样?

    var clicked:Boolean = false;
    var Modifier:int = 1;
    
    stage.addEventListener(MouseEvent.CLICK, Happening);
    
    public function Happening(e:MouseEvent):void{
       if(clicked){
         //return to default
         Modifier = 1;
         clicked = false;
       }else{
         Modifier = 4;
         clicked = true;
       }
    }
    

    甚至更简单

    if(Modifier==4){
       Modifier=1;
    }else{
       Modifier=4;
    }
    

    或一行

    Modifier = (Modifier==4) ? 1 : 4;
    

    【讨论】:

    • 是的,我没想到这一点真是愚蠢(开/关=真/假)。尽管我只是在学习 Flash,但我确实知道布尔值是什么,并且可以找到该解决方案! :P 还是谢谢你
    • 有时您只需要朝正确的方向轻推;)没问题,很高兴能够提供帮助
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多