java robot 控制鼠标_Java-探索Robot类:[2]自动控制鼠标
Robot系列的上一篇经验我介绍了一下Robot类的基本情况与使用,以及运用Robot类对屏幕进行截图操作.这一篇经验我将介绍如果用Robot类模拟鼠标操作.
1.Robot类的4个基本鼠标操作函数
mouseMove(int x, int y) ;//移动鼠标到(x,y)坐标处
void mousePress(int buttons) ;//按下鼠标上按键
void mouseRelease(int buttons) ;//释放鼠标上按键
void mouseWheel(int wheelAmt) ;//滚动鼠标滑轮
2.实现右键单击屏幕上的某一点
例如,右键单击屏幕上的(10,20)点:
robot.mouseMove(10, 20);//移动鼠标到(10,20)点
robot.mousePress(InputEvent.BUTTON3_MASK);//按下右键
robot.mouseRelease(InputEvent.BUTTON3_MASK);//释放右键
在这里顺便提一下,在Robot类的鼠标操作中buttons参数的取值有以下3个:
InputEvent.BUTTON1_MASK
InputEvent.BUTTON2_MASK
InputEvent.BUTTON3_MASK
分别代表左键,中键(滚轮键),右键.因此把上面的例子中的InputEvent.BUTTON3_MASK 改为InputEvent.BUTTON1_MASK 就可以实现左键单击(10,20)点了.
3.实现双击鼠标
实现双击鼠标实际上就是执行两次单击事件,并且在两次单击事件中加入适当的停顿.
Robot类有一个停顿(休眠)方法可供使用:
delay(int ms) ;//ms表示停顿的毫秒
所以,实现双击左键(10,20)点的代码如下:
robot.mouseMove(10, 20);//移动鼠标到(10,20)点
robot.mousePress(InputEvent.BUTTON1_MASK);//按下左键
robot.mouseRelease(InputEvent.BUTTON1_MASK);//释放左键
robot.delay(100);//停顿100毫秒,即0.1秒
robot.mousePress(InputEvent.BUTTON1_MASK);//按下左键
robot.mouseRelease(InputEvent.BUTTON1_MASK);//释放左键
4.实现鼠标拖动
实现拖动,实际上就是在某一处按下鼠标左键,然后移动鼠标,再释放左键.
所以,实现将鼠标从(10,20)拖动到(100,200)的代码如下:
robot.mouseMove(10, 20);//移动鼠标到(10,20)点
robot.mousePress(InputEvent.BUTTON1_MASK);//按下左键
robot.delay(100);//停顿100ms
robot.mouseMove(100, 200);//移动鼠标到(100,200)点
robot.mouseRelease(InputEvent.BUTTON1_MASK);//释放左键
5.实现鼠标滚轮的滑动
mouseWheel(int wheelAmt);
此方法中的wheelAmt指的是滑动滚轮上的刻度数.
如果此参数小于0,则表示向上滚动滑轮
如果此参数大于0,则表示向下滚动滑轮
例如,向上滚动5个刻度滑轮:
robot.mouseWheel(-5);
6.实现一个简单的自动滚动阅读软件
平时经常在电脑上看小说或长篇文章的朋友应该知道,在阅读长篇文章的时候右手老是要滚动鼠标滑轮非常不舒服,所以看完上面对Robot类鼠标操作的介绍,我们可以做一个简单的自动滚动阅读的软件.
代码如下图(我的百度网盘也有相应的源代码:http://pan.baidu.com/s/1sjwIrZf)
The End
@航行刘2014/05/06
java robot 控制鼠标_Java-探索Robot类:[2]自动控制鼠标相关推荐
- java robot键值_Java:使用Robot类模拟键盘, 以Alt码方式输出汉字
java.awt.Robot类 Java提供java.awt.Robot类来模拟操作键盘和鼠标, 下面是一个简单的demo public static void keyPressByInt(Robot ...
- java中控制反转_Java如何利用IOC控制反转的三种设计模式详解
这篇文章主要为大家详细介绍了Java使用IOC控制反转的三种设计模式,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 对于许多开发人员来说,控制反演(IoC)都是一个模糊的概念,因为他们在现实世界中 ...
- java 模拟鼠标_java实现简单的模拟键盘鼠标操作
简简单单的记录: 近期需要用到模拟键盘鼠标操作,所以记录下来,以备后用,看了很多例子,未标明引用,请见谅 package com.text.jna; import javax.imageio.Imag ...
- Java基础篇:去探索String类
今天对String做一个简单的探索. String类是Java类库中最常用的类,其中最明显的原因是字符串在编程语言中是很重要的部分. 有关字符串的最重要一点是,你创建的每一个字符串实际上都是Strin ...
- java字符串取反_Java探索之string字符串的应用代码示例
String类中提供了丰富的用于操作字符串的方法. int indexOf(String str) 该方法用于返回当给定字符串在当前字符串中的位置,若当前字符串不包含给定字符串则返回-1. 重载的方法 ...
- java random函数用法_JAVA的Random类的用法详解
Random类主要用来生成随机数,本文详解介绍了Random类的用法,希望能帮到大家. Random类 (java.util) Random类中实现的随机算法是伪随机,也就是有规则的随机.在进行随机时 ...
- java 枚举的继承_java中枚举类可以被继承吗?
java 枚举类 java中,使用关键字enum来定义枚举类,枚举类是一个特殊的类,大部分功能和普通类是一样的,区别为: ● 枚举类继承了java.lang.Enum类,而不是默认的Object类.而 ...
- Java中divide用法_java的BIgInteger类中divideAndRemainder方法怎么用?
展开全部 Java的BigInteger类中e68a8462616964757a686964616f31333433633436divideAndRemainder方法的用法是,先建一个BigInte ...
- java什么是网络接口_java接口和类的区别是什么?它们都有哪些作用呢?
由于新兴技术的发展,java不断地被更多人应用,而其中java接口和java类的区别主要是哪些,在哪些方面作用显著?这是困扰许多人的问题,那么,让我们继续看一下这两者的区别和作用吧? 在java中,对 ...
- java的character用法_Java中Character类的使用方法
Character类的使用方法 Character:字符类型 1.属性. static int MIN_RADIX :返回最小基数. static int MAX_RADIX :返回最大基数. sta ...
最新文章
- 第39次《中国互联网络发展状况统计报告》发布
- Betriebssystem I 操作系统课件 01. Evolution von Rechnersystemen 计算机操作系统的演变
- flutter进度条
- Apache RocketMQ部署文档
- About Site Definition Files
- 深入浅出根据函数调用过程谈栈回溯原理
- [转帖]真TM长的:SQL Server 2008存储结构——GAM和SGAM、PFS结构、IAM结构、DCMBCM
- 数据结构——堆栈的C++实现
- 基于 Canal 和 Kafka 实现 MySQL 的 Binlog 近实时同步
- 调整Excel的打印线
- 手机测试光纤网速的软件,如何测试光纤网速?如何测试网速多少兆
- Android Studio 开关控件Switch使用
- 下载flash文件的若干方法!
- 小米4android8.0root,小米8青春版获取root权限的教程
- sql left()函数
- cacti监控H3C交换机
- 国内首家专注影视文化产业的数藏平台“神缘”即将上线
- java 微信 推送_JAVA 微信消息模板推送
- SpringMVC源码分析迷你书
- 2024复旦大学计算机考研信息汇总