在actionscript中,如何在不在代码中键入ascii代码的情况下编写键盘处理程序?

时间:2010-09-23 22:45:17

标签: actionscript-3

我在actionscript中编写了一个键盘事件处理程序。当按下字母“d”时,我想跟踪一些事情。

private static const THE_LETTER_D:int = 100;
private function onKeyUp(evt:KeyboardEvent):void
{
   if (evt.keyCode == THE_LETTER_D )
   {
      trace('Someone pressed the letter d');
   }
}

有没有一种方法可以在不定义THE_LETTER_D的情况下做到这一点?我试图做int('d'),但这不起作用,我不知道还有什么可以尝试。

2 个答案:

答案 0 :(得分:1)

private function onKeyUp(evt:KeyboardEvent):void
{
    if (evt.charCode == 'd'.charCodeAt(0) )
    {
        trace('Someone pressed the letter d');
    }
}

应该这样做。

答案 1 :(得分:0)

flash.ui.Keyboard组件包含几个代表键盘字符的常量。

private function onKeyUp(evt:KeyboardEvent):void
{
    if (evt.charCode == Keyboard.D)
    {
        trace('Someone pressed the letter D');
    }
}