我一直在寻找能够在按键之间有一点延迟的方法。我一直在制作这个程序,它使用 JIntellitype 库读取全局热键,然后触发您分配的任何按键序列,例如按 numpad1 将执行 AB C 序列。我的问题是,如果我使用 Thread.sleep 它只是延迟 X 时间,然后按下所有分配的键,在任何按键之间没有任何延迟。有没有人有关于如何解决这个问题的建议?提前致谢!
这就是我用来通过 Robot 类发送按键的方法
public void onHotKey(int identifier) {
try {
Robot bot = new Robot();
if (output.elementAt(identifier - 1).length() == 1) {
ch = output.elementAt(identifier - 1).charAt(0);
bot.keyPress(ch);
} else {
int cmdSize = output.elementAt(identifier - 1).length();
for (int c = 0; c < cmdSize; c++) {
bot.keyPress((int) output.elementAt(identifier - 1).charAt(c));
try {
Thread.sleep(50);
} catch (InterruptedException ex) {
Logger.getLogger(NewJFrame.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
} catch (AWTException ex) {
Logger.getLogger(NewJFrame.class.getName()).log(Level.SEVERE, null, ex);
}
}