eclipse java。awt。机器人连续按键
这是我的问题。我有一个java程序,可以根据用户与安卓手机的交互方式向游戏(内置Unity)发送击键信息。(我的java程序是通过wi-fi进行安卓交互的侦听器)现在,为了做到这一点,我使用java.awt.Robot
向游戏窗口发送按键。我的listener程序中编写了以下代码块:
if(interacting)
{
Robot robot = new Robot();
robot.keyPress(VK_A);
robot.delay(20); //to simulate the normal keyboard rate
}
现在,只要用户按下手机的触摸屏,变量interacting
就会为真,我想要实现的是(通过监听器)向游戏发送连续的按键信息链。然而,出于某些原因,这严重影响了性能。我注意到游戏变得很慢(帧速率迅速下降),甚至电脑也变得很慢。怎么了?我应该在每个keyPress
之后使用robot.keyRelease(VK_A)
吗?但我的游戏有一个不同的动作映射到一个键的释放,我不希望快速按键和释放;我真正想要的是模拟连续的按键,就像用户手动按下键盘上的A
键一样。请帮忙
# 1 楼答案
是的,如果你用
Robot
键按下一个键,你也需要释放它也许是这样的