JAVA robot类控制键盘的问题

来源:百度知道 编辑:UC知道 时间:2024/05/27 04:58:22
我在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键,这会任务管理器出来了,但是却自动最小化在开始菜单栏的工具栏,没有显示在最前面。实在不解啊~求教高人。

哈哈,难受了吧,这个我也不知道,
貌似是因为windows的问题,java没那个‘权限’
就像java里的保留字一样 ,我这个就不让你用
所以我这就就不让你替代。你干着急没办法。
我想屏蔽这个快捷键也是怎么做都做不到
很是郁闷

楼主你好,我没用过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);
}
}