슬라이드 1

Similar documents
Microsoft PowerPoint - 06-Chapter09-Event.ppt

오버라이딩 (Overriding)

<4D F736F F F696E74202D20C1A63138C0E520C0CCBAA5C6AE20C3B3B8AE28B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

gnu-lee-oop-kor-lec10-1-chap10

운동시뮬레이션 강의 소개

Microsoft PowerPoint - ÀÚ¹Ù08Àå-1.ppt

Cluster management software

Microsoft PowerPoint - ÀÚ¹Ù08Àå-2.ppt

(Microsoft PowerPoint - LZVNQBAJWGTC.ppt [\310\243\310\257 \270\360\265\345])

제1장 자바 언어 소개

No Slide Title

Cluster management software

10장.key

PowerPoint Presentation

PowerPoint Presentation

<4D F736F F F696E74202D20C1A63230C0E520BDBAC0AE20C4C4C6F7B3CDC6AE203128B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

Microsoft PowerPoint 자바-AWT컴포넌트(Ch8).pptx

var answer = confirm(" 확인이나취소를누르세요."); // 확인창은사용자의의사를묻는데사용합니다. if(answer == true){ document.write(" 확인을눌렀습니다."); else { document.write(" 취소를눌렀습니다.");

<4D F736F F F696E74202D20C1A63139C0E520B9E8C4A120B0FCB8AEC0DA28B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

9장.key

Javascript

Microsoft PowerPoint - 14주차 강의자료

어댑터뷰

Microsoft PowerPoint - EEL2 Lecture10 -Swing and Event Handling.pptx

PowerPoint Template

제8장 자바 GUI 프로그래밍 II

JAVA PROGRAMMING 실습 08.다형성

11장.key

PowerPoint Presentation

Microsoft PowerPoint - Java-03.pptx

<4D F736F F F696E74202D20C1A63236C0E520BED6C7C3B8B428B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

Chap12

<4D F736F F F696E74202D20C1A63233C0E520B1D7B7A1C7C820C7C1B7CEB1D7B7A1B9D628B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

안드로이드기본 11 차시어댑터뷰 1 학습목표 어댑터뷰가무엇인지알수있다. 리스트뷰와스피너를사용하여데이터를출력할수있다. 2 확인해볼까? 3 어댑터뷰 1) 학습하기 어댑터뷰 - 1 -

강의자료

JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 ( ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각

슬라이드 1

Cluster management software

Design Issues

자바GUI실전프로그래밍2_장대원.PDF

public class FlowLayoutPractice extends JFrame { public FlowLayoutPractice() { super("flowlayout Practice"); this. Container contentpane = getcontentp

gnu-lee-oop-kor-lec06-3-chap7

Microsoft PowerPoint - web-part02-ch16-이벤트.pptx

Network Programming

Microsoft PowerPoint - java1-lecture10.ppt [호환 모드]

제11장 프로세스와 쓰레드

Microsoft PowerPoint - 04-UDP Programming.ppt

Microsoft PowerPoint UI-Event.Notification(1.5h).pptx

API - Notification 메크로를통하여어느특정상황이되었을때 SolidWorks 및보낸경로를통하여알림메시지를보낼수있습니다. 이번기술자료에서는메크로에서이벤트처리기를통하여진행할예정이며, 메크로에서작업을수행하는데유용할것입니다. 알림이벤트핸들러는응용프로그램구현하는데있어

PowerPoint Presentation

Java Programing Environment

제이쿼리 (JQuery) 정의 자바스크립트함수를쉽게사용하기위해만든자바스크립트라이브러리. 웹페이지를즉석에서변경하는기능에특화된자바스크립트라이브러리. 사용법 $( 제이쿼리객체 ) 혹은 $( 엘리먼트 ) 참고 ) $() 이기호를제이쿼리래퍼라고한다. 즉, 제이쿼리를호출하는기호

PowerPoint Presentation

<4D F736F F F696E74202D20C1A63034B0AD202D20C7C1B7B9C0D3B8AEBDBAB3CABFCD20B9ABB9F6C6DBC0D4B7C2>

q 이장에서다룰내용 1 객체지향프로그래밍의이해 2 객체지향언어 : 자바 2

1. 자바프로그램기초 및개발환경 2 장 & 3 장. 자바개발도구 충남대학교 컴퓨터공학과

iii. Design Tab 을 Click 하여 WindowBuilder 가자동으로생성한 GUI 프로그래밍환경을확인한다.

Microsoft PowerPoint - CSharp-10-예외처리

Spring Boot/JDBC JdbcTemplate/CRUD 예제

[ 그림 8-1] XML 을이용한옵션메뉴설정방법 <menu> <item 항목ID" android:title=" 항목제목 "/> </menu> public boolean oncreateoptionsmenu(menu menu) { getme

No Slide Title

PowerPoint 프레젠테이션

Microsoft PowerPoint - Java7.pptx

rmi_박준용_final.PDF

Microsoft PowerPoint - lec09_12.ppt [호환 모드]

슬라이드 1

슬라이드 1

- 이벤트의처리 <input type= button id= button1 value= 확인 /> <input type= button id= button2 value= 확인 /> 자바스크립트인경우 : document.getelementbyid( button1 ).oncl

JAVA PROGRAMMING 실습 09. 예외처리

Microsoft PowerPoint - 10장

PowerPoint Presentation

슬라이드 1

예제 2) Test.java class A intvar= 10; void method() class B extends A intvar= 20; 1"); void method() 2"); void method1() public class Test 3"); args) A

슬라이드 1

슬라이드 1

Visual Basic 기본컨트롤

PowerPoint Presentation

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션

학습목표 메뉴를추가하는방법을이해하고실습할수있다. 프로그램의기본설정 (settings) 을정의하는방법을알고실습할수있다. 대화상자를여는방법을알고실습할수있다. 로그메시지로디버깅하는방법을이해한다. 디버거로디버깅하는방법을이해한다.

07_ch13_pdf.hwp

PowerPoint 프레젠테이션

웹연동 } 웹 (Web) 환경에서데이터베이스시스템을연동하는방법은다음과같다 } Server Client 구조의통신 (2-Tier) } Server Middleware Client 구조의통신 (3-Tier) 2

SOFTBASE XFRAME DEVELOPMENT GUIDE SERIES ActiveX 컴포넌트가이드 서울특별시구로구구로 3 동한신 IT 타워 1215 호 Phone Fax

<4D F736F F F696E74202D20C1A63038C0E520C5ACB7A1BDBABFCD20B0B4C3BC4928B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

PowerPoint Presentation

PowerPoint 프레젠테이션

Modal Window

<4D F736F F F696E74202D203137C0E55FBFACBDC0B9AEC1A6BCD6B7E7BCC72E707074>

Spring Data JPA Many To Many 양방향 관계 예제

슬라이드 1

Microsoft PowerPoint - 4주차_Android_UI구현.ppt [호환 모드]

슬라이드 1

2장 변수와 프로시저 작성하기

슬라이드 1

05-class.key

JTable과 MVC(Model-View-Controller) 구조 - 모델-뷰-컨트롤러구조는데이터의저장과접근에대한제공은모델이담당하고, 화면표시는뷰, 이벤트의처리는컨트롤러가하도록각역할을구분한구조이다. 즉, 역할의분담을통하여상호간의영향을최소화하고각요소의독립성을보장하여독자

제목

JAVA PROGRAMMING 실습 05. 객체의 활용

<4D F736F F F696E74202D205B4A415641C7C1B7CEB1D7B7A1B9D65D3130C0E5C0CCBAA5C6AEC3B3B8AE>

Transcription:

이벤트 () 란? - 사용자가입력장치 ( 키보드, 마우스등 ) 등을이용해서발생하는사건 - 이벤트를처리하는프로그램은이벤트가발생할때까지무한루프를돌면서대기상태에있는다. 이벤트가발생하면발생한이벤트의종류에따라특정한작업을수행한다. - 이벤트관련프로그램작성을위해 java.awt.event.* 패키지가필요 - 버튼을누른경우, 1 버튼클릭이벤트발생 2 발생한이벤트인식 ( 이벤트리스너가수행 ) 3 발생한이벤트에따라원하는작업수행

이벤트의발생과처리 사용자 AWT 컴포넌트사용 이벤트발생 키보드이벤트리스너마우스이벤트리스너기타이벤트리스너

컴포넌트와이벤트 Component Action Adjustment Component Container Focus Item Key Mouse Mousemotion Text Window Button Canvas Checkbox CheckboxMenuItem Choice Component Container Dialog Frame Label List MenuItem Panel Scrollbar ScrollPane TextArea TextField Window

이벤트의종류 이벤트 Action Adjustment Component Container Focus Item Key Mouse MouseMotion Text Window 설명 버튼클릭, 리스트항목의더블클릭, 메뉴항목의선택, 텍스트필드에서 Enter 를눌렀을때발생 사용자가스크롤바를움직였을때발생 컴포넌트가사라지거나나타날때, 컴포넌트의이동및크기조절시에발생 컨터이너에컴포넌트가추가및제거되었을때발생 컴포넌트가초점 (Focus) 을얻거나잃었을때발생 체크박스, 선택버튼, 리스트의한항목이선택되었을때, 메뉴의항목이선택되거나해지될때발생 키보드로부터입력이발생할때 마우스버튼을클릭할때, 누를때, 놓을때, 컴포넌트영역에들어갈때및나올때발생 마우스드래그와이동시에발생 TextArea 나 TextField 에서값이입력될때발생 윈도우와활성화 (Activate), 비활성화, 아이콘화, 아이콘에서복구될때, 윈도우의오픈및종료시발생

이벤트처리과정 컴포넌트생성 이벤트등록 이벤트리스너작성 이벤트처리

이벤트처리방법 (1/3) - 컴포넌트객체에서이벤트가발생 ( 컴포넌트는이벤트소스가된다.) - 이벤트리스너가발생한이벤트를처리하도록한다. 이벤트의종류에따라컴포넌트에등록해야하는리스너가있다. 이러한리스너는 이벤트이름 + Listener 의형태로존재한다. (ActionListener, MouseListener, MouseMotionListener ) 리스너는이벤트와관련된인터페이스를상속받아구현한다. ( 인터페이스에존재하는모든메서드를재정의해야한다.

이벤트처리방법 (2/3) 1 java.awt.* 와 java.awt.event.* 패키지를 import 한다. import java.awt.*; import java.awt.event.*; 2 리스너인터페이스를상속받아서이벤트리스너를구현한다. class 클래스이름 extends Frame implements ActionListener { public void actionperformed(action e) {

이벤트처리방법 (3/3) 3 AWT 컴포넌트를생성한다. Button btn = new Button( 버튼 ); 4 컴포넌트의종류에따라해당리스너의객체를등록한다. btn.addactionlistener(this);

자바의이벤트인터페이스 리스너인터페이스어댑터클래스메서드 ActionListener AdjustmentListener actionperformed(action) adjustmentvaluechanged(adjustment) ComponentListener ComponentAdapter componenthidden(component), componentmoved(component), componentresized(component), componentshown(component) ContainerListener ContainerAdapter componentadded(container), componentremoved(container) FocusListener FocusAdapter focusgained(focus), focuslost(focus) ItemListener itemstatechanged(item) KeyListener KeyAdapter keypressed(key), keyreleased(key), keytyped(key) MouseListener MouseAdapter mouseclicked(mouse), mouseentered(mouse), mouseexited(mouse), mousepressed(mouse), mousereleased(mouse) MouseMotionListener MouseMotionAdapter mousedragged(mouse), mousemoved(mouse) TextListener textvaluechanged(text) WindowListener WindowAdapter windowactivated(window), windowclose(window), windowclosing(window), windowdeactivated(window), windowdeiconified(window), windowiconified(window), windowopened(window)

자바의이벤트메서드호출시기 (1/3) 메서드 호출시기 ActionPerformed(Action ae) 버튼을클릭했을때, Menu 를클릭했을때, TextField 에서 Enter 키를눌렀을때, List 의 item 하나를더블클릭했을때 componentmoved(action ae) 컴포넌트가이동되었을때 componenthidden(action ae) componentresized(action ae) componentshown(action ae) mousedragged(mouse me) mousemoved(mouse me) mousepressed(mouse me) mousereleased(mouse me) mouseentered(mouse me) mouseexited(mouse me) mouseclicked(mouse me) mousewheelmoved(mousewheel e) 컴포넌트가화면에보이지않게되었을때컴포넌트크기가변경되었을때컴포넌트가화면에보여질때마우스버튼을누른채로마우스를움직였을때마우스포인터를이동시킬때마우스버튼을눌렀을때마우스버튼을떼었을때마우스포인터가이벤트소스의영역안으로들어왔을때마우스포인터가이벤트소스의영역안에서밖으로이동할때마우스버튼을눌렀다가떼었을때마우스의휠을움직였을때

자바의이벤트메서드호출시기 (2/3) 메서드 호출시기 keypressed(key ke) keyreleased(key ke) keytyped(key ke) textvaluechanged(text te) focusgained(focus fe) focuslost(focus fe) itemstatechanged(item ie) adjustmentvaluechanged(adjustmenteven t ae) windowopened(window we) 키보드의키를눌렀을때 키보드의키를떼었을때 키보드의키를눌렀다떼었을때 TextField 또는 TextArea 의내용이변경되었을때 이벤트소스로 focus 가이동했을때 이벤트소스가갖고있던 focus 가다른컴포넌트로이동했을때 Checkbox, CheckboxItem, List, choice 의 status 가변경되었을때 (selected <-> unselected) Scrollbar 의값이변경되었을때 윈도우가열렸을때 windowclosing(window we) 윈도우가닫힐때 ( 닫기버튼을눌렀을때 ) windowclosed(window we) 윈도우가닫혔을때 (dispose() 가호출되었을떄 ) windowiconified(window we) windowdeiconified(window we) 윈도우가최소화 ( 아이콘화 ) 되었을때 윈도우가최소화상태에서다시원래크기로되었을때

자바의이벤트메서드호출시기 (3/3) 메서드 호출시기 windowactivated(window we) windowdeactivated(window we) windowgainedfocus(window we) windowlostfocus(window we) windowstatechanged(window we) componentadded(container ce) componentremoved(container ce) 윈도우가활성화되었을때윈도우가비활성화되었을때윈도우가포커스를얻을때윈도우가포커스를잃었을때윈도우의상태가변했을때컨테이너에컴포넌트가추가되었을때컨테이너에컴포넌트가제거되었을때

어댑터클래스 (Adapter Class) (1/2) - 이벤트를처리하는메서드를구현할때, 처리에필요한메서드만구현하면오류가발생한다. 왜냐하면, 이벤트리스너는인터페이스이기때문이다. - 인터페이스를구현하려면인터페이스에정의된모든메스드를구현해야하기때문이다. - 이벤트처리에필요한메서드만구현하고자할경우에사용하는클래스가어댑터클래스이다.

어댑터클래스 (Adapter Class) (2/2) - 어댑터클래스와인터페이스의실제구현예 interface KeyListener { public void keypressed(key e); public void keyreleased(key e); public void keytyped(key e); class KeyAdapter implements KeyListener { public void keypressed(key e) { public void keyreleased(key e) { public void keytyped(key e) {

어댑터클래스 (Adapter Class) 의사용법 class KeyHandler implements KeyListener { public void keypressed(key e) { System.out.println(e.getKeyChar()); public void keyreleased(key e) { public void keytyped(key e) { class KeyHandler extends KeyAdapter { public void keypressed(key e) { System.out.println(e.getKeyChar());

자바의리스너종류와연결및해제방법 리스너인터페이스리스너를컴포넌트에연결및해제할때사용하는메서드이벤트소스 ActionListener 리스너이름앞에 add 추가. 리스너이름앞에 remove 추가 Button, List, MenuItem, TextField AdjustmentListener 리스너이름앞에 add 추가. 리스너이름앞에 remove 추가 Scrollbar ComponentListener 리스너이름앞에 add 추가. 리스너이름앞에 remove 추가 Component ContainerListener 리스너이름앞에 add 추가. 리스너이름앞에 remove 추가 Container FocusListener 리스너이름앞에 add 추가. 리스너이름앞에 remove 추가 Component ItemListener 리스너이름앞에 add추가. 리스너이름앞에 remove 추가 Checkbox, CheckboxMenuItem, List, Choice KeyListener 리스너이름앞에 add 추가. 리스너이름앞에 remove 추가 Component MouseListener 리스너이름앞에 add 추가. 리스너이름앞에 remove 추가 Component MouseMotionListener 리스너이름앞에 add 추가. 리스너이름앞에 remove 추가 Component TextListener 리스너이름앞에 add 추가. 리스너이름앞에 remove 추가 TextField, TextArea WindowListener 리스너이름앞에 add 추가. 리스너이름앞에 remove 추가 Window WindowFocusListener 리스너이름앞에 add 추가. 리스너이름앞에 remove 추가 Window WindowStateListener 리스너이름앞에 add 추가. 리스너이름앞에 remove 추가 Window

리스너인터페이스와어댑터의사용예 import java.awt.frame; import java.awt.event.*; public class FrameTest { public static void main(string[] args) { Frame f = new Frame("Login"); f.addwindowlistener(new Handle()); f.setsize(300, 200); f.setvisible(true); class Handle extends WindowAdapter { public void windowclosing(window we) { we.getwindow().setvisible(false); we.getwindow().dispose(); System.exit(0); import java.awt.frame; import java.awt.event.*; public class FrameTest { public static void main(string[] args) { Frame f = new Frame("Login"); f.addwindowlistener(new Handle()); f.setsize(300, 200); f.setvisible(true); class Handle implements WindowListener { public void windowclosing(window we) { we.getwindow().setvisible(false); we.getwindow().dispose(); System.exit(0); public void windowclosed(window e){ public void windowiconified(window e){ public void windowdeiconified(window e){ public void windowactivated(window e){ public void windowdeactivated(window e){ public void windowopened(window e){