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

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("结束任务");
}
}

Powered by TurnKey Linux.