2013년 11월 25일 월요일

JAVAAWT의 Robot이용한 키보드, 마우스제어(자바 keyboard, mouse 제어), 자바교육/AWT교육

JAVAAWT의 Robot이용한 키보드, 마우스제어(자바 keyboard, mouse 제어), 자바교육/AWT교육
 
package onj;

/**
 * java.awt.Robot클래스는 마우스와 키보드 제어할 수 있게해주는 클래스인데
 * 자바프로그램에서 키보드와 마우스와 연관된 오퍼레이션을 할 수 있게 해준다.
 * 아래 예제는 키보드 이벤트를 핸들링하는데 실행시키면 커서가 있는 곳에 oraclejava를 출력한다.
 * 메모장같은것을 열고 커서를 그곳에 두면 거기에 글씨를 쓴다.
 *  */

import java.awt.AWTException;
import java.awt.Robot;
import java.awt.event.KeyEvent;
public class RobotTest {
   
    public static void main(String[] args) {
       
        try {
           
            Robot robot = new Robot();
           
            //5초 딜레이
            robot.delay(5000);
           
            robot.keyPress(KeyEvent.VK_O);
            robot.keyPress(KeyEvent.VK_R);
            robot.keyPress(KeyEvent.VK_A);
            robot.keyPress(KeyEvent.VK_C);
            robot.keyPress(KeyEvent.VK_L);
            robot.keyPress(KeyEvent.VK_E);
            robot.keyPress(KeyEvent.VK_J);
            robot.keyPress(KeyEvent.VK_A);
            robot.keyPress(KeyEvent.VK_V);
            robot.keyPress(KeyEvent.VK_A);
           
            //커서를 절대좌표 300,300으로 이동
            robot.mouseMove(300, 300);
           
        } catch (AWTException e) {
            e.printStackTrace();
        }
    }
}
 
 
 
그리고 다음과 같은 키보드와 마우스를 제어할 수 있는 메소드들이 존재한다.
 
public void mousePress(int buttons) : 마우스버튼이 눌려져 있는 상태로 만듬,
파라미터:InputEvent.BUTTON1_MASK, InputEvent.BUTTON2_MASK,InputEvent.BUTTON3_MASK 가 사용되며,하나 또는 하나이상의 플래그(파라미터)를 결합해서 사용할수 있습니다.
 
public void mouseRelease(int buttons) : 마우스 버튼이 눌려져 있지 않은 상태로 만듬,
mousePress와 파라미터는 동일하다.
 
public void keyPress(int keycode) : 해당 키가 눌려져 있는 상태로, 파라미터: VK_...  가상키코드
public void keyrelease(int keycode) : 해당키가 눌려져 있지 않은 상태로, 파라미터는 keyPress와 동일하다.

댓글 없음:

댓글 쓰기