我正在写一个获取Apple Remote信号的应用程序,我已经读完了遥控器上的硬件输入。现在我必须在遥控器上复制这些输入,例如键盘缓冲区或其他任何东西。我注意到java.awt.Robot中有一个Java类,但命令只是发送到Java应用程序本身而不是系统范围(!),如果我错了,请纠正我。
但是我需要一个解决方案让我的程序虚拟地按下系统范围的键盘,例如在MS Powerpoint等同步启动的程序中使用箭头键支持页面翻转。
有什么建议吗?
我的机器人“罗伯特”(因为我来自德国)没有工作的例子,它将通过系统范围内的按钮而不是应用程序范围。
switch(line) {
case LEFT: System.out.println("left");
robert.keyPress(37);
robert.keyRelease(37);
break;
case RIGHT: System.out.println("right");
robert.keyPress(39);
robert.keyRelease(39);
break;
case UP: System.out.println("up");
robert.keyPress(38);
robert.keyRelease(38);
break;
case DOWN: System.out.println("down");
robert.keyPress(38);
robert.keyRelease(38);
break;
case PLAYPAUSE: System.out.println("play pause");
robert.keyPress(516); // dollar sign
robert.keyRelease(516);
break;
case MENU: System.out.println("menu");
robert.keyPress(515); // euro sign
robert.keyRelease(515);
break;
}
答案 0 :(得分:0)
实际上,Robot类将能够控制你的鼠标和键盘“系统范围”,也就是说你可以使用它来模拟另一个应用程序的键盘输入。但是,对于此应用程序来接收“击键”,它实际上必须具有焦点(“活动”)。