반응형

보통 닷넷으로 개발하다가 자바만 사용 가능한 환경이 있어 자바로 만들어 보았습니다.

닷넷으로는 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

+ Recent posts