Robot自动化操作

本文介绍了Java中的Robot类,用于实现自动化控制键盘和鼠标。详细讲解了鼠标事件,包括左、中、右键的表示方式,并提醒了关于BUTTON1_DOWN_MASK等事件的新老版本差异。在键盘事件部分,特别提到了KeyEvent.VK_CONTROL代表Ctrl键,强调了这个易被忽视的细节。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Robot是java的自动化操作类,基目的是根据代码来自动操作键盘和鼠标
鼠标事件:

Robot robot = new Robot();
/** 鼠标左单击 */
robot.mousePress(InputEvent.BUTTON1_DOWN_MASK);
/** 鼠标单击之后要手动释放(松开) */
robot.mouseRelease(InputEvent.BUTTON1_DOWN_MASK);

/** 双击就是双倍单击 ^_^ */
robot.mousePress(InputEvent.BUTTON1_DOWN_MASK);
robot.mouseRelease(InputEvent.BUTTON1_DOWN_MASK);
robot.mousePress(InputEvent.BUTTON1_DOWN_MASK);
robot.mouseRelease(InputEvent.BUTTON1_DOWN_MASK);

/** 鼠标移动到以屏幕左上角为原点X轴100Y轴100的地方 */
robot.mouseMove(100, 100);

/** 滚动滚轮 */
robot.mouseWheel(凹槽数)

鼠标分为左、右和中(滚轮)
BUTTON1_DOWN_MASK______________________左
BUTTON2_DOWN_MASK______________________中
BUTTON3_DOWN_MASK______________________右
BUTTON1_MASK事件与上面的事件相同,但这是老版本的事件,推荐使用上面的事件(新老版本功能都能支持)


键盘事件:

/** 键盘组合事件 */
robot.keyPress(KeyEvent.VK_CONTROL);
robot.keyPress(KeyEvent.VK_A);
robot.keyRelease(KeyEvent.VK_A);
robot.keyRelease(KeyEvent.VK_CONTROL);

注意,这里有深坑一枚KeyEvent.VK_CONTROL代表的是Ctrl按钮,因为没有说明,常量也看不出来,还以为没有,坑(菜)死我了


/** 截屏并返回 */
BufferedImage image = robot.createScreenCapture(new Rectangle(0, 0, width, height))

/** 获取指定坐标下的像素颜色 */
Color color = getPixelColor(int 100, int 100);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值