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

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

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

Cluster management software

9장.key

<4D F736F F F696E74202D20C1A63139C0E520B9E8C4A120B0FCB8AEC0DA28B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

슬라이드 1

PowerPoint Presentation

Microsoft PowerPoint - 06-Chapter09-Event.ppt

<4D F736F F F696E74202D20C1A63233C0E520B1D7B7A1C7C820C7C1B7CEB1D7B7A1B9D628B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

강의자료

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

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

PowerPoint Template

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

Cluster management software

<4D F736F F F696E74202D20C1A63230C0E520BDBAC0AE20C4C4C6F7B3CDC6AE203128B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

07_ch13_pdf.hwp

제1장 자바 언어 소개

오버라이딩 (Overriding)

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

<4D F736F F F696E74202D20C1A63236C0E520BED6C7C3B8B428B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

JAVA PROGRAMMING 실습 08.다형성

PowerPoint Presentation

PowerPoint Presentation

No Slide Title

<4D F736F F F696E74202D20C1A63138C0E520C0CCBAA5C6AE20C3B3B8AE28B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

PowerPoint Presentation

PowerPoint Presentation

05-class.key

Cluster management software

슬라이드 1

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

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

Java Programing Environment

Chap12

No Slide Title

쉽게 풀어쓴 C 프로그래밍

PowerPoint Presentation

Microsoft PowerPoint - 14주차 강의자료

어댑터뷰

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

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

01-OOPConcepts(2).PDF

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

쉽게 풀어쓴 C 프로그래밍

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

Design Issues

Network Programming

11장.key

운동시뮬레이션 강의 소개

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

PowerPoint Presentation

<4D F736F F F696E74202D20C1A63038C0E520C5ACB7A1BDBABFCD20B0B4C3BC4928B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

Microsoft PowerPoint - java1-lab5-ImageProcessorTestOOP.pptx

PowerPoint 프레젠테이션

8장.그래픽 프로그래밍

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션

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

비긴쿡-자바 00앞부속

자바로

PowerPoint Presentation

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

Microsoft PowerPoint - 2강

이장에서다룰내용 테두리를제어하는스타일시트 외부여백 (Margin) 과내부여백 (Padding) 관련속성 위치관련속성 2

제목

PowerPoint Presentation

10-Java Applet

(8) getpi() 함수는정적함수이므로 main() 에서호출할수있다. (9) class Circle private double radius; static final double PI= ; // PI 이름으로 로초기화된정적상수 public

제11장 프로세스와 쓰레드

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

No Slide Title

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

Microsoft PowerPoint - 04-UDP Programming.ppt

10장.key

Microsoft PowerPoint - Lect04.pptx

Microsoft PowerPoint - Java-03.pptx

Microsoft PowerPoint - Java7.pptx

쉽게 풀어쓴 C 프로그래밊

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

JAVA PROGRAMMING 실습 05. 객체의 활용

JAVA PROGRAMMING 실습 09. 예외처리

MVVM 패턴의 이해

PowerPoint Presentation

PowerPoint 프레젠테이션

쉽게

ch09

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

ThisJava ..

미쓰리 파워포인트

자바 프로그래밍

<4D F736F F F696E74202D B3E22032C7D0B1E220C0A9B5B5BFECB0D4C0D3C7C1B7CEB1D7B7A1B9D620C1A638B0AD202D20C7C1B7B9C0D320BCD3B5B5C0C720C1B6C0FD>

09-interface.key

PowerPoint 프레젠테이션

슬라이드 1

02 C h a p t e r Java

PowerPoint 프레젠테이션

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

Contents. 1. PMD ㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍ 2. Metrics ㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍ 3. FindBugs ㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍ 4. ㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍ

Visual Basic 반복문

Transcription:

5. 배치관리자 1 AWT 컴포넌트 1. AWT 프로그램과이벤트 2. Component 클래스 3. 메뉴 4. 컨테이너와컨트롤

AWT AWT: Abstract t Window Toolkit GUI 를만들기위한 API 윈도우프로그래밍을위한클래스와도구를포함 Graphical User Interface 그래픽요소를통해프로그램과대화하는방식 그래픽요소를 GUI 컴포넌트라함 2

윈도우프로그램만들기 간단한 AWT 프로그램 import java.awt.*; class MyFrame extends Frame { public MyFrame(String title) { super(title); this.setsize(400, 300); this.setvisible(true); } } public class HelloAWT1 { public static ti void main(string i args[]) { MyFrame myframe = new MyFrame("Hello AWT"); } } 3

이벤트처리하기 이벤트처리과정의예 종료버튼클릭 이벤트가발생하며, 이벤트소스에게전달됨 이벤트처리기가등록되어있는경우, 이벤트처리기가자동실행됨 this.addwindowlistener(new sadd do s e e MyListener()); e 4

5

6

AWT 패키지의 GUI 컴포넌트 클래스유형 클래스 GUI 컨트롤 Button, Label, Canvas, Choice, Checkbox 등 컴포넌트 BorderLayout, FlowLayout, 배치 GridLayout 등 그래픽출력 컨테이너 Color, Font, Point, Graphics, Image 등 Panel, Frame, Window 등 7

클래스계층구조 Component Button Canvas Checkbox Choice Label List Scrollbar Container TextComponent scrollpane Panel Window TextArea TextField Dialog Frame FileDialog 8

기타 AWT 의클래스들 Dimension 컴포넌트의너비와높이를저장 (width, height) Rectangle 사각형정보의저장 (x, y, width, height) Point 2차원상의점을저장 (x, y) 9

Color 기타 AWT 의클래스들 색상을표현하기위한클래스 Color.WHITE, Color.balck, Color.BLUE Cursor 마우스커서의모양설정 Cursor.HAND_CURSOR 등 Font 문자출력에사용되는글자체를표현 이름, 스타일, 크기 Graphics 그래픽정보의저장

Component 클래스 메뉴를제외한대부분 GUI 컴포넌트들의수 퍼클래스역할 Component 클래스는 abstract 클래스로서직접객체를생성할수는없지만, 컴포넌트의기본적인동작에관련된메소드들을정의함 11

Component 클래스의메소드 위치및크기관련메소드 Rectangle getbounds() void setlocation(point p) void setbounds(rectangle r) void setpreferredsize(dimension psize) 그래픽관련메소드 Color getforeground(), void setforeground(color c) Font getfont(), void setfont(font f) boolean isvisible() 12

컴포넌트색칠하기 색칠연산의유발 시스템의의해 컴포넌트가화면에처음등장했을때 크기가변하거나가려졌던부분이드러날때 프로그램에의해 다시칠해야할상황이될때 알고리즘에의해필요한경우 13

paint( ) 메소드 시스템에의해색칠하기가유발된경우자동호출되는콜백메소드 프로그램에서직접호출하지않음 Component 또는 Container 클래스의 paint 를재정의하여사용해야함 public void paint(graphics g) 매개변수 (Graphics 객체 ) : 컴포넌트가화면에그려질때사용되는그래픽관련정보가이미설정됨

15

16

repaint( ) 메소드 프로그램에의해색칠하기가필요한경우호출함 Component 클래스의 repaint를그대로사용하는것이일반적임 ( 중량) 컴포넌트인경우 update() 호출 17

update( ) 메소드 repaint() 에의해호출됨 재정의하지않은경우배경을다시칠하고 paint() 을호출함 재정의하는경우필요한부분만다시그리면효과적 18

19

20

21

Window 클래스 Window 최상위수준의컨테이너 제목이나테두리가없으며메뉴바를가지지않음 생성자 Window(Frame owner), Window(Window owner) 22

Frame 클래스 Frame 최상위수준의컨테이너 제목과테두리가있으며메뉴를 가질수있음 기본레이아웃은 BorderLayout 23

메뉴관련클래스계층구조 Object MenuComponent MenuBar MenuItem Menu CheckboxMenuItem PopupMenu 24

풀다운 (Pull Down) 메뉴 제목표시줄밑의메뉴바를가짐 메뉴만들기과정 MenuBar 객체생성 MenuBar 에추가할 Menu 객체를생성 Menu에추가할또다른서브 Menu객체나 MenuItem 객체를생성하고 Menu 에붙임 생성한 Menu 를 Menubar 에추가 프레임에 MenuBar를붙임 25

팝업 (Popup) 메뉴 팝업메뉴 컨테이너내부에서어디든나타남 메뉴만들기 PopupMenu 객체를생성한다 PopupMenu에 MenuItem이나서브 Menu 객체를추가 PopupMenuP M 를 Frame 에추가 PopupMenu를보이게함 26

27

28

Dialog 클래스 일시적으로화면에나타나사용자입력을받거나메시지를보일때사용 생성자 Dialog(Dialog owner, String title) public Dialog(Frame owner, String title, boolean modal) 29

30

FileDialog 클래스 파일을저장하거나불러오기를할때, 파일을선택할수있게하는대화상자 모달대화상자 생성자 FileDialog(Dialog owner, String title, int mode) : mode는 FileDialog.LOAD 또는 FileDialog.SAVE 메소드 String ggetfile() String getdirectory() 31

32

Button 클래스 이름이있는버튼을표현 생성자 Button(), Button(String label) 메소드 void setlabel(string label), l) String getlabel() 33

34

Canvas 클래스 비어있는사각영역을표현 그림이나글씨를출력하는데사용 다른컨테이너에포함되어존재 35

36

Checkbox 클래스 체크박스표현 생성자 Checkbox(String label, boolean state) Checkbox(String label, boolean state, CheckboxGroup group) : 라디오버튼처럼동작 37

38

Choice 클래스 콤보박스표현 선택할아이템이많은경우사용 현재선택된것이보임 메소드 void additem(string item) void insert(string item, int index) String getitem(int index) int getselectedindex() String getselecteditem() 39

40

List 클래스 하나또는여러개의아이템을선택할수있게함 선택할아이템이매우많을때사용 스크롤가능 생성자 List(int rows, boolean multiplemode) 메소드 void add(string item), void add(string item, int index) String getitem(int index) int getselectedindex() 41

42

Scrollbar 클래스 스크롤바생성 생성자 Scrollbar(int orientation, int value, int visible, ibl int minimum, i int maximum) : orientation은 Scrollbar.HORIZONTAL 또는 Scrollbar.VERTICAL : value 는 bubble 의위치, 기본은 0 : visible 은 bubble 의크기, 기본은 10 : minimum 은 value 의최소치, 기본은 0 : maximum 은 vlaue 의최대치, 기본은 100 43

TextComponent 텍스트를편집하거나다루기위한컴포넌트 TextArea와 TextField의슈퍼클래스 메소드 int getcaretposition() String getselectedtext() String gettext() void select(int start, int end) void settext(string t) 44

TextArea 와 TextField TextArea 여러줄의텍스트편집 생성자 TextArea(String text, int rows, int cols, int scrollbars) 메소드 void append(string text) void insert(string text, int pos) void replacerange(string g text, int start, int end) TextField 한줄의텍스트편집 45

46

Container 클래스 다른컴포넌트를포함하는컴포넌트 추상클래스로기본메소드제공 자식컴포넌트들의배치담당 ScrollPane, Panel, Window 등 47

Container 클래스의메소드 자식컴포넌트관련메소드 Component getcomponentat(point p) Component getcomponent(int n) 배치관련메소드 void setlayout(layoutmanager lm) void validate() Insets getinsets() : Insets 클래스에는경계선의크기정보인 top, left, right, bottom 를가짐 48

Panel 클래스 가장단순한컨테이너 다른패널이나컴포넌트를포함 다른컨테이너에포함되어야함 기본레이아웃은 FlowLayout 49

50

51

ScrollPane 클래스 자동적스크롤기능제공 하나의자식 ( 주로 Panel) 만을포함 배치관리자를둘수없다 마우스휠을이용한스크롤링가능 생성자 ScrollPane(int policy) 메소드 Point getscrollposition() void setscrollposition(int x, int y) 52

53

54

컴포넌트수동배치 부모컴포넌트가자식을수동배치 기본배치관리자를제거함 : setlayout(null) 자식컴포넌트의위치, 크기를설정함 : setbounds() 55

배치관리자의사용 FlowLayout 수평배치 선호크기 (preferred Size) 로배치함 Panel 의기본배치관리자 GridLayout 바둑판모양으로배치 자식컴포들의크기가동일함 56

배치관리자의사용 BorderLayout 동, 서, 남, 북, 중앙에배치 크기가자동조절됨 Window, Frame, Dialog 의기본배치관리자 CardLayout 한번에하나의카드 ( 자식컴포넌트 ) 만나타남 컨테이너에추가된순서또는이름에의해보이게함 57

58

59

60

61