새소식

인기 검색어

개인공부/Java

java_GUI

  • -

참고 :

https://dahye-jeong.gitbook.io/java/java/undefined/gui#undefined-5

 

GUI - JAVA

(예) JButton, JTextField, JChoice, JList, JMenu, JCheckbox, JScrollBar,JTextArea, JCanvas

dahye-jeong.gitbook.io

https://yooniron.tistory.com/tag/GUI

 

Yoon's Dev

재미있게 개발하는 개발자입니다. ENTP - 뜨거운 논쟁가 -

yooniron.tistory.com

이벤트 리스너 정리 : https://m.blog.naver.com/bestheroz/103847993

 

[Java]AWT - 이벤트처리의 종류

[Event의 종류와 관련 인터페이스와 이벤트 리스너를 Component에 추가/제거하는 메서드] 이벤트 인터페...

blog.naver.com

https://coding-factory.tistory.com/262

 

[Java] GUI 이벤트란 무엇인가?

 이벤트란? 이벤트(Event)라는 것은 윈도우 프로그래밍에서 어떤 특정한 행동이 발생한 그 자체를 의미합니다. 예를 들어 메뉴를 선택했다는가, 아니면 마우스를 클릭하거나, 윈도우의 크기를

coding-factory.tistory.com

자바 이벤트 3대속성

1. 이벤트 소스(Event Source)

이벤트 소스는 이벤트가 발생되는 컴포넌트를 말한다.  즉, 버튼, 체크박스, 리스트, 프레임, 마우스 등과 같은 컴포넌트들이 이벤트 소스이다. 

 

2. 이벤트 리스너(Event Listener)  

이벤트 소스에서 이벤트가 발생하는지를 검사하고 있다가 이벤트가 발생이 되면 실제적으로 이벤트를 처리할 수 있도록 만든 인터페이스이다.  

 

3. 이벤트 핸들러(Event Handler) 

이벤트 리스너에 전달된 이벤트를 실제로 처리할 수 있도록 이벤트 리스너에 포함되어있는 메서드로 발생된 이벤트 객체를 받아와서 실제적으로 처리해주는 기능을 가지고 있다.  

 

이벤트의 종류 및 설명

 이벤 설명 
ActionEvent  버튼, 리스트, 메뉴 등의 컴포넌트가 눌리거나 선택이 되었을 때 발생하는 이벤트 
AdjustmentEvent 스크롤바와 같은 조정 가능한 컴포넌트에서 조정이 일어나면 발생하는 이벤트
ComponentEvent 컴포넌트의 모습이나 이동, 크기가 변화될 때 발생하는 이벤트 
ItemEvent 리스트와 같은 선택항목이 있는 컴포넌트에서 선택항목이 선택될 때 발생되는 이벤트 
TextEvent 텍스트 컴포넌트에서 값이 입력될 때 발생하는 이벤트
ContainerEvent 컨테이너에 컴포넌트가 추가되거나 제거될 때 발생하는 이벤트
FocusEvent 컴포넌트에 초점(Focus)이 들어 올 때 발생하는 이벤트 
PaintEvent 컴포넌트가 그려져야할 때 발생하는 이벤트  
WindowEvent 윈도우가 활성화되거나 비활성화 될 때, 최소, 최대, 종료 될 때 발생하는 이벤트 
KeyEvent 키보드로부터 입력이 될 때 발생하는 이벤트
MouseEvent 마우스가 눌려지거나 움직일 때, 마우스 커서가 컴포넌트 영역에 들어가거나 벗어날 때 발생하는 이벤트 

 

컴포넌트별 이벤트 종류

 

컴포넌트 이벤트 처리 3단계

1. 이벤트 소스 결정

하나의 윈도우에는 여러 개의 컴포넌트가 존재할 수 있으므로 실제로 이벤트가 발생되면 처리할 컴포넌트를 결정한다.  

 

2. 이벤트 리스너 작성

이벤트를 실제적으로 처리할 수 있도록 해당 이벤트를 처리 할 이벤트 리스너 인터페이스를 이용해서 이벤트 리스너 클래스를 작성한다.  

 

3. 이벤트 소스와 이벤트 리스너 연결

이벤트 리스너가 작성이되면 리스너와 이벤 트 소스와 연결을 하여 이벤트 소스에서 실제적으로 이벤트가 발생이 되면 처리할 수 있도록 addXXXXListener()함수를 통해 연결을 시켜준다.  XXXX부분은 해당 컴포넌트에 붙일 수 있는 리스너 이름을 의미한다.  예를 들어 버튼에 ActionEvent을 처리하기 위하여 버튼에다가 addActionListener를 붙이는 경우이다. 

 

컴포넌트 어댑터 클래스

리스너가 인터페이스로 되어 있어 리스너에 선언되어 있는 추상메서드를 모두  버라이드를 시켜야 사용이 가능합니다. 즉, 처리하지 않는 메서드까지도 오버라이드하여 처리를 해야하니 굉장히 번거로운 작업이라고 생각할 것이다. 그 래서 API에는 이러한 작업을 좀 더 쉽게 처리할 수 있도록 Adapter라는 클래스 가 존재한다. 

 

Adapter 클래스는 이벤트 리스너 인터페이스들 중에서 추상메서드가 2개이상 존재하는 인터페이스를 구현한 추상 클래스이다. 인터페이스에 있는 모든 메서드를 빈(Empty) 메서드로 재정의 하였기 때문에 인 터페이스를 구현하여 불필요한 메서드를 재정의하는 수고를 덜어준다.  Adapter 클래스를 상속받은 클래스에서는 자신이 필요한 메서드만을 재정의 하면 된다.  

 

어뎁터 클래스의 종류

 

'개인공부 > Java' 카테고리의 다른 글

OSI 7계층  (1) 2022.09.02
java socket  (0) 2022.09.02
컬렉션 프레임워크  (0) 2022.07.21
예외처리  (0) 2022.07.21
이너클래스와 이너 인터페이스  (0) 2022.07.20
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.