我想将 keyevent 键码值转换为字符串或字符值。任何一个都可以。
例如,当我按“SPACE”时,“让我们说”的键码为 20,我想将该值转换为字符或字符串。有没有这样做的标准方法,或者我必须为键盘上的每个键写一堆“if”语句?
将其投射到 Char。
Char c=(Char)keycode;
如果 e 是 KeyEvent 的可变参数,则使用
e.getKeyText(e.getKeyCode())
但最好在 KeyEvent 的静态上下文中使用它
KeyEvent.getKeyText(e.getKeyCode())
它返回一个字符串,但您可以转换为或获取以其他可解析数据类型返回的字符串的值
只需将其转换为一个字符,但不能使用大写 c:
char c = (char) 20;
一种方法是加载 Map 中的所有值,然后获取每个按下的键的值。就像如果您按下空格键并输入 20,只需从地图中获取与该键关联的值并使用它。
另一个类似于 Reujoe 的选项是getKeyChar()
在您有 KeyEvent 变量时使用。
e.getKeyChar()
它将键码的字符表示形式返回为Char