1
5
也许这个丑陋的黑客:
然后,keytextTocode将包含从字符串(例如“a”或“page-up”)到VK代码的映射。 |
2
6
稍微澄清 Pace's answer . 它应该是单引号(表示字符),而不是双引号(表示字符串)。 使用双引号将引发java.lang.IllegalArgumentException(字符串格式不正确)。 |
3
4
|
4
2
在我编写的扩展机器人类中,我对大写字母和数字使用以下代码:
基本上,我只是看看 keyevent.vk_随便什么 并在我的代码中进行了适当的数学补偿。 |
5
1
我不认为有一个简单的答案。 首先意识到Java有两个字节字符,而不是将近2 ^ 16键事件。所以会有一些字符,不能为它们生成keyEvent来获取输出。
此外,C和C以及和都有相同的
|
6
1
亚当·帕因特的回答(对问题的回答) Convert String to KeyEvents )也应该在这里工作。简单但有效的想法是有一个像下面这样的大开关:
整个列表(包括周围的实用程序类)见原始答案。 |
7
1
如果您的主要目标是尽可能快地写出字母,那么您可以做我所做的,即将字符串写入剪贴板,然后使用
系统剪贴板中还有一些其他功能,允许您保存和恢复剪贴板上的任何数据,以备需要。此外,如果要控制每个字符之间的速度,可以将每个字母一次一个放到剪贴板上,并使用
|
8
0
我发现有两种方法: a.使用jbutton.setmnemonic和getmnemonic的解决方法:
b.下载打开的JDK源代码并查看其abstractButton.setmnemonic(char)方法。此代码是根据GPL2授权的,但这4行通常与“keypress(48+(int)c)”的答案相同。 |