DekAuto4-使用说明文档-鼠标事件
这篇文章主要介绍一下如何使用鼠标点击的相关事件方法,包括鼠标左键、右键、拖拽、图片识别点击、区域识别点击、异步图片识别点击事件等,话不多说,直接上代码:
1、鼠标左键+右键 单击开始按钮
import controlUtils.ControlEventUtils;
import events.MouseEvent;
public class MouseClickTest {
public static void main(String args[]) throws Exception {
ControlEventUtils
.mouseEvent(MouseEvent.TYPE_LEFT_CLICK, 30, 1323)
.delay(200)
.mouseEvent(MouseEvent.TYPE_RIGHT_CLICK, 30, 1323);
}
}
说明:在上篇文章左键单击开始按钮的基础上直接加上鼠标右键单击,效果如下:

2、鼠标拖拽,将电脑管家图标拖至桌面中央
import controlUtils.ControlEventUtils;
import events.MouseEvent;
import events.ShortCutEvent;
public class MouseClickTest {
public static void main(String args[]) throws Exception {
ControlEventUtils
.shortcutCommand(ShortCutEvent.WINDOWS, ShortCutEvent.D)
.delay(200)
.mouseMove(236, 800)
.mouseEvent(MouseEvent.TYPE_DRAGMOVE, 1200, 600);
}
}
效果如下:

3、快捷键win+D返回桌面+图片识别点击“电脑管家”
注:在使用OpenCv相关功能时,一定要先调用intiOpenCvDll,初始化自己本地路径的dll,再进行使用;
代码如下:
import controlUtils.ControlEventUtils;
import events.MouseEvent;
import events.ShortCutEvent;
import tools.OpenCvUtils;
public class MousePicClick {
static String filePath = System.getProperty("user.dir");
public static void main(String agrs[]) throws Exception {
OpenCvUtils.intiOpenCvDll("D:\\openCv-java\\opencv_java401.dll");
ControlEventUtils
.shortcutCommand(ShortCutEvent.WINDOWS, ShortCutEvent.D)
.delay(200)
.mouseEvent(MouseEvent.TYPE_PIC_CLICK, filePath + "\\picTest.png");
}
}
效果如下:

4、区域图片识别点击:在桌面一定范围内寻找某图,找到后点击该图位置
效果例如下图,从大红框中查找电脑管家的图片,随后点击:

代码如下:
import controlUtils.ControlEventUtils;
import events.MouseEvent;
import events.ShortCutEvent;
import tools.OpenCvUtils;
import java.awt.*;
public class MousePicClick {
static String filePath = System.getProperty("user.dir");
public static void main(String agrs[]) throws Exception {
OpenCvUtils.intiOpenCvDll("D:\\openCv-java\\opencv_java401.dll");
Rectangle rectangle = new Rectangle(83, 380, 440, 850);
ControlEventUtils
.shortcutCommand(ShortCutEvent.WINDOWS, ShortCutEvent.D)
.delay(200)
.mouseEvent(MouseEvent.TYPE_AREA_PIC_CLICK, rectangle, filePath + "\\picTest.png");
}
}
效果如下:

5、异步等待图片识别点击:可以自行设定等待时间,等待时间内出现该图,则点击,否则跳过该操作,目前该功能在Win10高分辨率电脑上不是很稳定,直接图片识别点击相对稳定;
代码如下:
import controlUtils.ControlEventUtils;
import events.MouseEvent;
import events.ShortCutEvent;
import tools.OpenCvUtils;
public class MousePicClick {
static String filePath = System.getProperty("user.dir");
public static void main(String agrs[]) throws Exception {
OpenCvUtils.intiOpenCvDll("D:\\openCv-java\\opencv_java401.dll");
ControlEventUtils
.shortcutCommand(ShortCutEvent.WINDOWS, ShortCutEvent.D)
.delay(200)
.mouseEvent(MouseEvent.TYPE_PIC_WAIT_CLICK,3000,filePath+"\\picTest.png");
}
}
效果如下:
