You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
62 lines
1.8 KiB
62 lines
1.8 KiB
package xyz.wbsite.jtask;
|
|
|
|
import xyz.wbsite.jmacro.JMacro;
|
|
import xyz.wbsite.jmacro.base.ViewRect;
|
|
import xyz.wbsite.jmacro.util.Logger;
|
|
|
|
/**
|
|
* 任务实现
|
|
*
|
|
* @author wangbing
|
|
* @version 0.0.1
|
|
* @since 1.8
|
|
*/
|
|
public class TaskImpl extends JMacro {
|
|
|
|
@Override
|
|
public synchronized ViewRect focus() {
|
|
Logger.info("定位工作窗口");
|
|
ViewRect rect = getScreenRect();
|
|
Logger.info("聚焦窗口:" + rect.toString());
|
|
Logger.info("聚焦窗口大小:{}x{}", rect.getRight() - rect.getLeft(), rect.getBottom() - rect.getTop());
|
|
return rect;
|
|
}
|
|
|
|
@Override
|
|
public void task() {
|
|
// 此处我们模拟一个简单的脚本
|
|
// 比如在window11打开我的电脑再关闭
|
|
Logger.info("启动任务");
|
|
|
|
Logger.info("查找我的电脑图标");
|
|
ViewRect launch = findLegend("我的电脑", 0.9);
|
|
if (launch == null) {
|
|
Logger.error("未找到我的电脑图标");
|
|
return;
|
|
}
|
|
|
|
Logger.info("启动图标坐标:", launch.toString());
|
|
Logger.info("移动鼠标");
|
|
mouseMove(launch.getCenter(), true);
|
|
Logger.info("双击我的电脑");
|
|
mouseLeftDoubleClick(launch);
|
|
Logger.info("等待程序启动中,请稍等...");
|
|
delay(3 * 1000);
|
|
|
|
ViewRect windows = findLegend("我的电脑窗口", 0.9);
|
|
if (windows == null) {
|
|
Logger.error("我的电脑启动失败");
|
|
return;
|
|
}
|
|
Logger.info("定位到我的电脑窗口");
|
|
Logger.info("移动鼠标");
|
|
mouseMove(windows.getCenter().offsetX(100), true);
|
|
|
|
Logger.info("等待1秒后自动关闭");
|
|
delay(1000);
|
|
mouseLeftClick(windows.getCenter().offsetX(100));
|
|
|
|
Logger.info("结束任务");
|
|
}
|
|
}
|