Java将键码转换为字符串或字符

8
我希望将 keyevent keycode 值转换为字符串或字符值。两者都可以。
例如,当我按下“SPACE”键时,其键码为20,我想将该值转换为字符或字符串。是否有标准的方法来完成这个任务,还是我必须为键盘上的每个键编写一堆“if”语句?

4
你的意思是类似于KeyEvent.getKeyText()这样的吗? - Michał Kosmulski
5个回答

13

将它转换为Char。

Char c=(Char)keycode;

太简单了 O_O 谢谢! - user2098268

8
如果e是KeyEvent的变量参数,请使用以下代码:
 e.getKeyText(e.getKeyCode())

但最好在KeyEvent的静态上下文中使用它。
KeyEvent.getKeyText(e.getKeyCode())

这个函数返回一个字符串,但你可以将其转换为或获取可解析成其他数据类型的字符串值。


2

将它转换为字符,但不要用大写的c:

char c = (char) 20;

1
一种方法是将所有的值加载到一个Map中,只需获取每个按键对应的值即可。例如,如果您按下SPACE-KEY并输入20,则只需从Map中获取与该键关联的值并使用它。

0

另一个类似于Reujoe的选项是,如果您有KeyEvent变量,则可以使用getKeyChar()

e.getKeyChar()

它将键码的字符表示作为Char返回


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接