我想使用 java.awt.Robot
类来实现虚拟键盘。我想知道是否有一种方法可以使用 keyPress(int)
方法发送带有键位置(左或右)的键码。如果您将 KeyListener
添加到 awt 元素,则由 ctrl 或 shift 触发的 KeyEvent
有一个信息,如果它是向左或向右按钮。
文档告诉我们:
Key codes that have more than one physical key associated with them (e.g.
KeyEvent.VK_SHIFT
could mean either the left or right shift key) will map to the left key".
但是真的没有办法发送右移吗?某些应用程序(例如 VirtualBox)需要这些正确的按钮(当然,您可以配置这些应用程序,但没有虚拟键盘的选项)。
那么...有没有办法用 Robot
类来做到这一点?
有没有其他方法可以用 Java 发送更具体的按键事件?
最佳答案
经过更多搜索,我目前认为 java.awt.Robot
可能不是正确的选择。发送特殊 key (如德语变音符号)时存在已知问题,这些 key 在 jvm 中没有 key 代码分配。
所以我自己回答这个问题“没有办法用 Robot
类来做到这一点”。
关于Java awt.Robot : send key with position for eg. 右移或右ctrl,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3659020/