반응형
보통 닷넷으로 개발하다가 자바만 사용 가능한 환경이 있어 자바로 만들어 보았습니다.
닷넷으로는 F13 등 키보드에는 없는 값을 입력하는 것으로 했었는데 이번에는 마우스를 살짝 이동하는 방식으로 하였습니다.
중간에 로그를 위한 변수 등 이있고, 실행 주기 등은 윈도우에 설정된 화면보호기나 절전 실행 주기를 확인하여 적절하게 변경하면 됩니다. (아래 소스는 5분에 한번으로 설정함)
import java.awt.MouseInfo;
import java.awt.Point;
import java.awt.PointerInfo;
import java.awt.Robot;
import java.util.Timer;
import java.util.TimerTask;
public class Main {
static int mouse_move_count = 0;
public static void main(String[] args) {
final Timer timer = new Timer();
TimerTask timerTask = new TimerTask() {
@Override
public void run() {
System.out.println("RUN : " + Integer.toString(mouse_move_count)); //Log
try {
Robot robot = new Robot();
PointerInfo pointerInfo = MouseInfo.getPointerInfo();
Point point = pointerInfo.getLocation();
System.out.println(String.format("X : {%d}, Y : {%d}", point.x, point.y)); //Log
int x= point.x+1;
robot.mouseMove(x, point.y);
robot.mouseMove(--x, point.y);
} catch (Exception ex) {
System.out.println("EXCEPTION : " + ex.getMessage()); //Log
}
mouse_move_count++;
}
};
timer.schedule(timerTask, 1000, 5*60*1000); //프로그램 시작 후 1초, 매 5분마다 실행
}
}
반응형
'IT > Java' 카테고리의 다른 글
http request 상세 정보 로깅 (0) | 2023.02.28 |
---|---|
Annotation 생성하기 (0) | 2023.02.27 |
제어의 역전(IoC, Inversion of Control) (0) | 2023.02.23 |
[IDE] Intellij Gradle 대신 Java 에서 실행 (0) | 2023.02.20 |
[IDE] Intellij 단축키 for Windows (0) | 2023.02.20 |