我在JAVA写一个快捷键映射工具,比如按下某个按钮后执行快捷键Ctrl+Alt+Delete等。
代码如下:
import java.awt.Robot;
import java.awt.event.KeyEvent;
public class robot_test
{
public static void main(String[] args) {
Robot robot = new Robot();
robot.keyPress(KeyEvent.VK_CONTROL);
robot.keyPress(KeyEvent.VK_ALT);
robot.keyPress(KeyEvent.VK_DELETE);
robot.keyRelease(KeyEvent.VK_DELETE);
robot.keyRelease(KeyEvent.VK_CONTROL);
robot.keyRelease(KeyEvent.VK_ALT);
}
但是结果无法出现任务管理器的窗口,我将中间的两行代码中的VK_DELETE替换成其他键位,比如替换成VK_UP,Ctrl+ALT+UP在JAVA中是复制下一行的快捷键命令,运行结果成功,我也试过其他一些快捷键组合,发现就Ctrl+Alt+Delete出不来,不知道哪位高人能解答,万分感激!
后来我手动按住Ctrl和Alt键,让程序按下Delete键,这会任务管理器出来了,但是却自动最小化在开始菜单栏的工具栏,没有显示在最前面。实在不解啊~求教高人。
JAVA robot类控制键盘的问题
答案:3 悬赏:70 手机版
解决时间 2021-02-12 21:38
- 提问者网友:孤凫
- 2021-02-12 16:37
最佳答案
- 五星知识达人网友:风格不统一
- 2021-02-12 17:26
楼主你好,我没用过robot类,我也不知到ctrl+alt+delete为什么不能调出任务管理器,但楼主可用下列代码代替 :
package test;
import java.awt.AWTException;
import java.awt.Robot;
import java.awt.event.KeyEvent;
public class TestRobot {
public static void main(String[] args) throws AWTException {
Robot robot = new Robot();
robot.keyPress(KeyEvent.VK_CONTROL);
robot.keyPress(KeyEvent.VK_SHIFT);
robot.keyPress(KeyEvent.VK_ESCAPE);
robot.keyRelease(KeyEvent.VK_ESCAPE);
robot.keyRelease(KeyEvent.VK_SHIFT);
robot.keyRelease(KeyEvent.VK_CONTROL);
}
}
package test;
import java.awt.AWTException;
import java.awt.Robot;
import java.awt.event.KeyEvent;
public class TestRobot {
public static void main(String[] args) throws AWTException {
Robot robot = new Robot();
robot.keyPress(KeyEvent.VK_CONTROL);
robot.keyPress(KeyEvent.VK_SHIFT);
robot.keyPress(KeyEvent.VK_ESCAPE);
robot.keyRelease(KeyEvent.VK_ESCAPE);
robot.keyRelease(KeyEvent.VK_SHIFT);
robot.keyRelease(KeyEvent.VK_CONTROL);
}
}
全部回答
- 1楼网友:鸽屿
- 2021-02-12 18:49
哈哈,难受了吧,这个我也不知道,
貌似是因为windows的问题,java没那个‘权限’
就像java里的保留字一样 ,我这个就不让你用
所以我这就就不让你替代。你干着急没办法。
我想屏蔽这个快捷键也是怎么做都做不到
很是郁闷
- 2楼网友:酒醒三更
- 2021-02-12 18:17
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯