Java使⽤Robot类模拟⿏标、键盘事件
Robot类⽤于模拟⿏标、键盘事件,⽣成本机系统输⼊事件。Robot 的主要⽤于⾃动化、⾃运⾏的程序和其他需要⾃动控制⿏标和键盘的程序
相当于实际操作的效果,不仅仅只是⽣成对应的⿏标、键盘事件。
⽐如useMove() 将实际移动⿏标光标,⽽不是只⽣成⿏标移动事件。
实现的是本机的全局模拟,不仅仅局限于写的程序和IDE
Robot类常⽤⽅法:
void delay (int ms) 睡眠指定的时间(类似于线程中sleep)
void keyPress(int keycode)按下指定的键
void keyRelease(int keycode)释放指定的键
void mousePress(int buttons)按下⼀个或多个⿏标按键
void mouseRelease(int buttons)释放⼀个活多个⿏标按键
void mouseMove(int x,int y)将⿏标移动到给定的屏幕坐标上
mousemove是什么键void mouseWheel(int wheelAmt)滚动⿏标滑轮
实例:
1package my_package;
2
3import java.awt.*;
4import java.awt.event.InputEvent;
5import java.awt.event.KeyEvent;
6
7
8/**
9 * 利⽤Robot实现⾃动清屏
10*/
11public class Test {
12public static void main(String[] args) throws AWTException {
13 System.out.println("ok");
14 Robot robot = new Robot();
15
16//将⿏标移到控制台区域
17 useMove(300,600);
18
19//单击右键
20 usePress(InputEvent.BUTTON3_DOWN_MASK);
21 useRelease(InputEvent.BUTTON3_DOWN_MASK);
22
23//按CTRL+⼩键盘的数字0,实现清屏。需要先设置清屏快捷键为Ctrl+⼩键盘的数字0
24 robot.keyPress(KeyEvent.VK_CONTROL);
25 robot.keyPress(KeyEvent.VK_NUMPAD0);
26 robot.keyRelease(KeyEvent.VK_NUMPAD0);
27 robot.keyRelease(KeyEvent.VK_CONTROL);
28
29 }
30
31 }
1package my_package;
2
3import java.awt.*;
4import java.awt.event.KeyEvent;
5
6/**
7 * 利⽤Robot类实现⾃动返回桌⾯(Win+D)
8*/
9public class Test2 {
10public static void main(String[] args) throws AWTException {
11 Robot robot=new Robot();
12 robot.keyPress(KeyEvent.VK_WINDOWS);
13 robot.keyPress(KeyEvent.VK_D);
14 robot.keyRelease(KeyEvent.VK_D);
15 robot.keyRelease(KeyEvent.VK_WINDOWS);
16 }
17 }
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论