자바 robot 함수를 Process 실행 후 실행하는 방법
조회수 1866회
public static void main(String[] args) throws Exception {
p = Runtime.getRuntime().exec("java -jar HandPoint.jar");
Robot robot = new Robot();
if(isRunning(p)==true){
AUTOTAB(robot);
}else{
System.out.println("치명적 오류");
}
}
static boolean isRunning(Process process) {
try {
process.exitValue();
return false;
} catch (Exception e) {
return true;
}
}
public static void AUTOTAB(Robot robot){
robot.keyPress(KeyEvent.VK_ALT);
robot.keyPress(KeyEvent.VK_TAB);
}
소스코드는 다음과 같습니다. JAR을 실행하면 윈도우 형태로 실행이 되기때문에 윈도우 창을 감추기 위해서 alt+tab키를 robot 함수를 통해서 이벤트를 발생시켜봤습니다. 코드 순서대로 보았을때는 분명히 jar 실행시키는 프로세스 함수가 먼저 실행되는 줄 알았으나, 왠일인지 로봇 함수가 먼저 실행되어 ALT+TAB 커멘드가 먼저 입력이되고 프로세스가 실행됩니다. 반대로 JAR 실행시키는 프로세스 먼저 실행 후, ALT+TAB 이벤트를 발생시킬 방법은 없는건가요..?
-
(•́ ✖ •̀)
알 수 없는 사용자
댓글 입력