如何以编程方式生成按键事件?

2022-09-04 23:04:53

Java程序应该做的是,它应该在某种条件下触发键盘按下,而无需有人按下键盘键。因此,任何在Windows和焦点中运行的需要键盘输入的程序都将获得输入,而无需实际按下键盘。

我在这里找到了这些相关问题:问题1问题2

我想知道是否有任何方法可以在Java中执行此操作。


答案 1

使用机器人类。

代码片段:

import java.awt.Robot;
import java.awt.KeyEvent;

Robot r = new Robot();
int keyCode = KeyEvent.VK_A; // the A key
r.keyPress(keyCode);
// later...
r.keyRelease(keyCode);

但是,如果您尝试在计算机上自动执行任务,我会推荐AutoHotKey。它专门用于自动化常见任务,因此使用它比Java更容易。


答案 2

推荐