2020. 10. 16. 20:36ㆍ교육과정/KOSMO
키워드 : 이미지 변경 / RolloverIcon, PressedIcon / setMnemonic (니모닉) / setToolTipText (툴팁) / GUI 동작 이벤트 / 인터페이스와 상속 / 이벤트 핸들러 / 포커스 이벤트 / 윈도우 이벤트 / 이벤트 생성시 분기점 만들기 / 이너클래스 / 이벤트 생성 스크립트의 다양한 작성법
****
1. 버튼에 이미지 삽입 + 클릭했을 때 이미지 변경
▶ new ImageIcon( ) ;
▶ setVerticalTextPosition( ) ;
▶ setHorizontalTextPosition( ) ;
▶ setRolloverIcon( ) ;
▶ setPressedIcon( ) ;
▶ setMnemonic( ' ' ) ;
▶ setToolTipTest( " " ) ;
2. GUI 동작 - 이벤트
(1) 이벤트 핸들러 (이벤트 구현할 클래스)
- 이벤트 관련 인터페이스를 상속
- 메소드를 오버라이딩
(2) 이벤트 핸들러를 객체 생성
(3) 화면에서 이벤트가 발생할 컴포넌트와 2번을 연결
# 이벤트 종류
- ActionEvent (****)
- 버튼 클릭
- 메뉴 클릭
- 텍스트필드에서 엔터
- KeyEvent
- MouseEvent
- FocusEvent
- WindowEvent
3. 인터페이스 전체 상속과 부분상속을 위한 클래스 상속시 주의사항
interface FocusListener { >> 상위 인터페이스
void aaa( ) ;
void bbb( ) ;
}
class FocusAdapter implements FocusListener { >> 인터페이스 상속 : 함수를 모두 완성시켜야 한다.
public void aaa( ) {
}
public void bbb( ) {
}
}
class FocusHdlr extends FocusAdapter { >> 하위클래스 상속 : 필요한 함수만 오버라이딩 가능하다.
public void aaa( ) { -> 정상 오버라이딩
}
public void bbbbbb( ) { -> 인지X 오버라이딩X ----> 오탈자를 찾아내지 못하기 때문에 주의 필요
}
}
4. 이벤트핸들러
actionPerformed( ) { }
JOptionPane.showMessageDialog( , ) ;
JOptionPane.showConfirmDialog( , ) ;
JOptionPane.OK_OPTION -------------- System.exit(0);
ActionListener / ActionAdapter
FocusListener / FocusAdapter
WindowListener / WindowAdapter
5. 이벤트 생성시 분기점 만들기 - OK버튼과 CANCEL버튼
: get으로 리턴하는 타입은 모두 Object 자료형을 갖게 된다. 필요에 따라서 적절히 형 변환 해주어야 한다.
getSource( ) ;
이너클래스에 대한 class 파일이 자동으로 생성된다.
6. 이벤트 처리시 객체 생성의 또 다른 방법
7. 이벤트를 위한 이너클래스 생성 자체를 하지 않는 방법
- 클래스에서 인터페이스를 상속받는다.
8.