Java awt.Robot : send key with position for eg. 右移或右ctrl

标签 java keyboard virtual awtrobot

我想使用 java.awt.Robot 类来实现虚拟键盘。我想知道是否有一种方法可以使用 keyPress(int) 方法发送带有键位置(左或右)的键码。如果您将 KeyListener 添加到 awt 元素,则由 ctrlshift 触发的 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/

相关文章:

macos - VirtualHere 如何在 macOS 上创建虚拟 USB 设备?

java - 从网络摄像头代码将图片上传到 Twitter 每次都上传相同的照片

java - 远程调试如何工作?代码需要在本地盒子上编译吗?

java - 短长度身份验证 token

cordova - 显示/隐藏 Cordova 的软键盘

java - 强制从 AlertDialog 中显示软键盘

Android - 处理虚拟和物理键盘事件

字符串和整数参数的 Java compareTo

具有相同名称的 C++ 虚拟覆盖函数

C++:从父类(super class)调用函数模板