Lia*_*rty 2 air keyboard flash actionscript actionscript-3
我使用Adobe AIR 3.4 for Desktop运行时在Flash CS6中使用Actionscript 3.
我将某些键代码定义为整数值(以下示例为UP返回38,D为68)
var KEY_UP:uint = Keyboard.UP;
var KEY_D:uint = Keybaord.D;
Run Code Online (Sandbox Code Playgroud)
但是,我需要向用户显示键的键(显然不能显示整数值).
如何将这些键盘值转换为字符串值,例如"Up"或"D"(而不是38和68)?
您可以获取属性名称describeType,并将属性作为String访问Keyboard["UP"].
所以,你可以创建表.例如
import flash.utils.describeType;
function getKeyboardDict():Dictionary {
var keyDescription:XML = describeType(Keyboard);
var keyNames:XMLList = keyDescription..constant.@name;
var keyboardDict:Dictionary = new Dictionary();
var len:int = keyNames.length();
for(var i:int = 0; i < len; i++) {
keyboardDict[Keyboard[keyNames[i]]] = keyNames[i];
}
return keyboardDict;
}
var keyDict:Dictionary = getKeyboardDict();
trace(keyDict[Keyboard.UP]); //UP
trace(keyDict[Keyboard.SHIFT]); //SHIFT
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2523 次 |
| 最近记录: |