为防止系统桌面自动锁屏,只需打成jar包,写个批处理程序start.bat,双击执行保持dos窗口执行即可,无其他影响。
程序设计为每30秒动一次鼠标,可根据需要调整。
附代码:
package main;
import java.awt.AWTException;
import java.awt.Dimension;
import java.awt.MouseInfo;
import java.awt.Point;
import java.awt.PointerInfo;
import java.awt.Robot;
import java.awt.Toolkit;
public class Main {
public static void main(String[] args) {
Robot robot = null;
try {
robot = new Robot();
} catch (AWTException e1) {
e1.printStackTrace();
}
Point pos = MouseInfo.getPointerInfo().getLocation();
int last_x = pos.x;
int last_y = pos.y;
int mov = 1;
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
System.out.println("Screen size: " + screenSize.getWidth() + "*" + screenSize.getHeight());
while (true) {
System.out.println(pos.x + " " + pos.y);
PointerInfo pos_info = MouseInfo.getPointerInfo();
if (pos_info == null) {
System.out.println("Get location fail!");
try {
Thread.sleep(30000L);
} catch (InterruptedException e) {
e.printStackTrace();
}
} else {
pos = pos_info.getLocation();
if ((pos.x == last_x) && (pos.y == last_y)) {
System.out.println("moving!");
if (pos.y <= 0) {
mov = 1;
}
if (pos.y > 0) {
mov = -1;
}
robot.mouseMove(pos.x, pos.y + mov);
robot.mouseMove(pos.x, pos.y);
}
pos_info = MouseInfo.getPointerInfo();
if (pos_info == null) {
System.out.println("Get location fail!");
try {
Thread.sleep(30000L);
} catch (InterruptedException e) {
e.printStackTrace();
}
} else {
pos = pos_info.getLocation();
last_x = pos.x;
last_y = pos.y;
try {
Thread.sleep(30000L);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}
}
}
将这个Main类打成jar包,此处jar包名为MouseMove.jar;与jar包同目录位置写个.bat类型文件,文件内容如下:
@echo off
java -jar MouseMove.jar
双击执行即可。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持亿速云。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。