0

我想做一个菜单,当它不存在时,按Esc打开它,当它存在时,按Esc关闭它。但这不起作用,它显示此错误:

1176:具有静态类型的值与flash.text:TextField可能不相关的类型之间的比较String

这是我的代码

stage.addEventListener(KeyboardEvent.KEY_DOWN, down);
function down(keyEvent:KeyboardEvent):void
{
    var keyPressed:String = "";
    keyPressed = keyEvent.keyCode.toString();
    if (keyPressed == "27")
    {
        if (now == "0")
        {
            menu._x = 100;
            now.text = "1";
        }
        else if (now == "1")
        {
            menu._x = -400;
            now.text = "0";
        }
    }
}
4

1 回答 1

3

如果now是 aTextField你需要比较它的text属性

stage.addEventListener(KeyboardEvent.KEY_DOWN, down);
function down(keyEvent:KeyboardEvent):void
{
    if (keyEvent.keyCode == Keyboard.ESCAPE)
    {
        if (now.text == "0")
        {
            menu._x = 100;
            now.text = "1";
        }
        else if (now.text == "1")
        {
            menu._x = -400;
            now.text = "0";
        }
    }
}

您还可以设置visiblefalse/true隐藏显示菜单而不是将其移出舞台。我还更改了 keyCode 以使用Keyboard该类。

于 2013-04-26T15:12:15.360 回答