KeyEvent는 자바에서 Key를 눌렀을때 발생하는 Event이다.
Java 홈페이지를 보면 알겠지만 모든 키에 다 이름을 할당해 놓았다.
A를 누르면 VK_A B를 누르면 VK_B 등 등
VK_* 로써 알기 쉽게 설명이 되어 있다.
KeyListener를 통해 이 Event들을 받아서 컨트롤 할 수 있다.
cPanel.addKeyListener(new ListenKey());
KeyLIstener를 사용하기 위해서는 이 처럼 addKeyListener() Fuction을
사용해서 나타낸다.
이때 넘어오는 파라미터 값은 KeyListener를 상속 받은 클래스면 된다.
class ListenKey implements KeyListener{
@Override
public void keyPressed(KeyEvent e) {
// TODO Auto-generated method stub
switch(e.getKeyCode()){
case KeyEvent.VK_LEFT:
cx--;
cPanel.repaint();
break;
case KeyEvent.VK_RIGHT:
cx++;
cPanel.repaint();
break;
case KeyEvent.VK_UP:
cy--;
cPanel.repaint();
break;
case KeyEvent.VK_DOWN:
cy++;
cPanel.repaint();
break;
}
}
보다시피 KeyListener에는 3가지 Method가 Implements 되어 있어 반드시
추가해야 한다. 세 가지 Method는 알기 쉽다.
이름에서도 알수 있다 시피 Key가 눌러 졌을때, Key를 땠을 때,
Key를 쳤을 때에 각각의 Method가 호출되게 된다.
위 코드에서는 키가 눌러졌을 때 Object를 움직이는 간단한 코드를 삽입하였다.
댓글 없음:
댓글 쓰기