在 Actionscript 2 中添加键盘侦听器到整个 Flash 影片



我一直在寻找一种有效使用 AS2 来检测整个.swf中的空格键按下的方法,无论聚焦什么影片剪辑。我找到了几个声称的解决方案,这些解决方案要么适用于 AS3,要么适用于 AS2,但并没有完全满足我的需要。在调整了我的发现之后,到目前为止,还没有一个检测到空格键。谁能提出替代方案?我觉得这是非常明显的东西,我错过了它!

这是我到目前为止尝试过的(位于时间轴上的第一帧也是唯一一帧):1)

var stageListener:Object = new Object();
stageListener.onKeyUp = function() {
    if(Key.getAscii() == 32){
        trace("spaceup");
        dostuff;
    }
};
Stage.addListener(stageListener);

2)

stage.onKeyUp = function() {
    if(Key.getAscii() == 32){
        trace("spaceup");
        dostuff;
    }
};

3)

_root.onKeyUp = function() {
    if(Key.getAscii() == 32){
        trace("spaceup");
        dostuff;
    }
};

4)

Main.stage.onKeyUp = function() {
    if(Key.getAscii() == 32){
        trace("spaceup");
        dostuff;
    }
};

5) 将其中一个附加到 swf 中的每个显示级交互式影片剪辑。还是没有!

this.onKeyUp = function() {
    if(Key.getAscii() == 32){
        trace("spaceup");
        dostuff;
    }
};

感谢您的任何帮助!

你和第一次尝试非常接近。 Key对象是附加侦听器的位置,而不是舞台。

var keyListener:Object = new Object();
keyListener.onKeyDown = function() {
   if(Key.getCode() == 32){
       //do something here for space bar press
   }
};
Key.addListener(keyListener);

AS2 非常复古...我希望您有充分的理由使用它而不是 AS3

相关内容

  • 没有找到相关文章

最新更新