//action event 처리하기
import java.awt.*;
import java.awt.event.*;
public class Action implements ActionListener{
Frame f;
Button b;
public static void main(String args[]){
Action a = new Action();
}
public Action(){
f = new Frame();
b = new Button("QUIT");
f.add(b);
b.addActionListener(this);
f.setSize(200,200);
f.setVisible(true);
}
public void actionPerformed(ActionEvent e){
b.setBackground(Color.red);
b.setLabel(""QUIT");
}
}
//addActionListener()를 통해 해당 버튼의 이벤트를 Frame에 등록한다.
//해당 버튼이 클릭이 일어나면 public vodi actionPerformed(ActionEvent e)에 의해 상태가 변하고, 해당하는 코드가 실행된다.
//앞의 코드는 버튼이 었고 이번에는 윈도우에 대한 이벤트를 다루어 보자
import java.awt.*;
import java.awt.event.*;
public class Action implements WindowListener{
Frame f;
public static void main(String args[]){
Action a = new Action();
}
public Action(){
f = new Frame();
f.addWindowListener(this);
f.setSize(200,200);
f.setVisible(true);
}
public void windowClosing(WindowEvent e){
System.exit(0);
}
public void windowActivated(WindowEvent e){}
public void windowClosed(WindowEvent e){}
public void windowOpened(WindowEvent e){}
public void windowDeactivated(WindowEvent e){}
public void windowDeiconified(WindowEvent e){}
public void windowIconified(WindowEvent e){}
}
addWindowListener()로 이벤트 코드를 등록한 뒤 메소드 구현한다.
그러나, 리스너 인터페이스들을 implements 했을 때는 필요없는 메소들도 모두 구현해야 하는 불편함이 있기 때문에, 이를 추상 메소드로 만든 클래스인 어댑터클래스를 사용할 수 있다.
<Listener interface>
ComponentListener : ComponentAdapter (나머지도 모두 이름 뒤에 Adaptor가 붙는다)
ContainerListener
FocusListener
MouseListener
MouseMotionListener
WindowListener
KeyListener
다음은 어댑터 클래스 사용의 예제이다.
import java.awt.*;
import java.awt.event.*;
public class Action extends WindowAdapter{
Frame f;
public static void main(String args[]){
Action a = new Action();
}
public Action){
f = new Frame();
f.addWindowListener(this);
f.setSize(200,200);
f.setVisible(true);
}
public void windowClosing(WindowEvent e){
System.exit(0);
}
}
'개발 및 관리 > Java' 카테고리의 다른 글
자바 추천 서적 (0) | 2013.01.16 |
---|---|
프로토콜 정의 되어 있는 사이트 (0) | 2008.07.09 |
awt, 버튼 마우스로 클릭했을 때 동작하기 (0) | 2008.06.08 |
Eclipse, 사용시에 아주 유용한 단축키들 (2) | 2008.06.05 |
변환, 문자에서 숫자로, 숫자에서 문자로 (0) | 2008.04.01 |