【问题标题】:How to create a two function button in Adobe Flash- light on/off?如何在 Adob​​e Flash-light on/off 中创建两个功能按钮?
【发布时间】:2014-09-23 05:43:58
【问题描述】:

我正在尝试创建一个电灯开关作为练习,但我正在努力使用开/关功能。 这个想法是创建一个按钮(带有 if 循环),在鼠标单击时打开灯并在您再次单击时将其关闭。

这一定很简单。你能给我一些建议吗? 提前致谢!

Mouse.hide(); // Standard Mauszeiger wird nicht angezeigt

kaefer_mc.mouseEnabled = false; //dadruch wird die Fähigkeit der Käfers auf Mausklick zu       reagieren, deaktiviert. und der eigentlich Muaszeiger der unsichtbar ist funktionier.
stop();

stage.addEventListener(MouseEvent.MOUSE_MOVE, folgeMaus); //stage bedeutet die ganze Bühne, MOUSE_MOVE heißt Mausbewegung

function folgeMaus(ereignis:MouseEvent) {
            kaefer_mc.x = stage.mouseX; //Mauskoordinaten für xAchse
            kaefer_mc.y = stage.mouseY; //Mauskoordinaten für yAchse
}

knopf_bt.addEventListener(MouseEvent.CLICK, schalten);

function schalten(ereignis:MouseEvent) {
            if(knopf_bt.enabled = false){
                           lichtAn_pic.gotoAndPlay(1);
            }else{
                           lichtAus_pic.gotoAndPlay(2);
                           }
            }

【问题讨论】:

    标签: flash flash-cs4


    【解决方案1】:

    您有多种解决方案

    如果 lichtAn_pic 是黑色矩形(可见或不可见)

    function schalten(ereignis:MouseEvent):void {
                lichtAn_pic.visible = !lichtAn_pic.visible;
    }
    

    如果 lichtAn_pic 是黑色矩形(它的 alpha 发生变化)

    var light:Boolean = true;
    lichtAn_pic.alpha = .3;
    
    function schalten(ereignis:MouseEvent):void {
                lichtAn_pic.alpha = (light) ? 0 : .3;
                light = !light;
    }
    

    如果 lichtAn_pic 是第 1 帧有光,第 2 帧有夜晚的影片剪辑(因为没有必要为此创建 2 个影片剪辑)

    function schalten(ereignis:MouseEvent):void {
                if (light) {
                    lichtAn_pic.gotoAndStop(1);
                } else {
                    lichtAn_pic.gotoAndStop(2);
                }
                light = !light;
    }
    

    备注

    MOUSE_MOVE 上,您可以使用updateAfterEvent() 获得更好的屏幕显示:

    function folgeMaus(ereignis:MouseEvent):void {
                kaefer_mc.x = stage.mouseX;
                kaefer_mc.y = stage.mouseY;
                ereignis.updateAfterEvent();
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-04-14
      • 2012-09-15
      • 2017-10-04
      • 2016-09-23
      • 2019-11-23
      • 2011-12-01
      • 2011-09-27
      • 1970-01-01
      相关资源
      最近更新 更多