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

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

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

9장.key

슬라이드 1

<4D F736F F F696E74202D20C1A63233C0E520B1D7B7A1C7C820C7C1B7CEB1D7B7A1B9D628B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

Microsoft PowerPoint - 06-Chapter09-Event.ppt

<4D F736F F F696E74202D20C1A63139C0E520B9E8C4A120B0FCB8AEC0DA28B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

Cluster management software

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

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

<4D F736F F F696E74202D20C1A63236C0E520BED6C7C3B8B428B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

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

<4D F736F F F696E74202D20C1A63138C0E520C0CCBAA5C6AE20C3B3B8AE28B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

오버라이딩 (Overriding)

강의자료

Cluster management software

PowerPoint Presentation

PowerPoint Presentation

Chap12

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

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

PowerPoint Presentation

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

<4D F736F F F696E74202D20C1A63230C0E520BDBAC0AE20C4C4C6F7B3CDC6AE203128B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

11장.key

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

PowerPoint Presentation

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

JAVA PROGRAMMING 실습 08.다형성

No Slide Title

No Slide Title

PowerPoint 프레젠테이션

10-Java Applet

Network Programming

05-class.key

PowerPoint Presentation

Microsoft PowerPoint - 14주차 강의자료

8장.그래픽 프로그래밍

슬라이드 1

<4D F736F F F696E74202D20C1A63038C0E520C5ACB7A1BDBABFCD20B0B4C3BC4928B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

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

Java Programing Environment

Design Issues

PowerPoint Presentation

Microsoft PowerPoint - Java-03.pptx

Cluster management software

PowerPoint 프레젠테이션

쉽게 풀어쓴 C 프로그래밍

PowerPoint 프레젠테이션

01-OOPConcepts(2).PDF

슬라이드 1

PowerPoint Presentation

쉽게 풀어쓴 C 프로그래밍

10장.key

자바로

운동시뮬레이션 강의 소개

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

rmi_박준용_final.PDF

Microsoft PowerPoint - 2강

PowerPoint Presentation

슬라이드 1

쉽게 풀어쓴 C 프로그래밊

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

PowerPoint 프레젠테이션

제11장 프로세스와 쓰레드

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

JAVA PROGRAMMING 실습 09. 예외처리

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

Microsoft PowerPoint - 04-UDP Programming.ppt

ch09

Microsoft PowerPoint - Java7.pptx

PowerPoint Presentation

어댑터뷰

JAVA PROGRAMMING 실습 05. 객체의 활용

Microsoft PowerPoint 자바-기본문법(Ch2).pptx

09-interface.key

No Slide Title

제목

PowerPoint Presentation

PowerPoint 프레젠테이션

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

PowerPoint Presentation

Spring Boot/JDBC JdbcTemplate/CRUD 예제

02 C h a p t e r Java

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

PowerPoint Presentation

class Sale void makelineitem(productspecification* spec, int qty) SalesLineItem* sl = new SalesLineItem(spec, qty); ; 2. 아래의액티비티다이어그램을보고 Java 또는 C ++,

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션

비긴쿡-자바 00앞부속

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

Microsoft PowerPoint - java2 [호환 모드]

Cluster management software

PowerPoint Presentation

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

Microsoft PowerPoint - Lect04.pptx

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

쉽게

<4D F736F F F696E74202D B3E22032C7D0B1E220C0A9B5B5BFECB0D4C0D3C7C1B7CEB1D7B7A1B9D620C1A638B0AD202D20C7C1B7B9C0D320BCD3B5B5C0C720C1B6C0FD>

중간고사

Transcription:

AWT 컴포넌트 (1) 1. AWT 패키지 2. AWT 프로그램과이벤트 3. Component 클래스 4. 컴포넌트색칠하기 AWT GUI 를만들기위한 API 윈도우프로그래밍을위한클래스와도구를포함 Graphical User Interface 그래픽요소를통해프로그램과대화하는방식 그래픽요소를 GUI 컴포넌트라함

윈도우프로그램만들기 간단한 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 void main(string args[]) { MyFrame myframe = new MyFrame("Hello AWT"); 익명클래스의사용 import java.awt.*; public class HelloAWT3 { public static void main(string args[]) { Frame myframe = new Frame("Hello AWT") { public void paint(graphics g) { g.drawstring("hello AWT", 150, 150); ; myframe.setsize(400, 300); myframe.setvisible(true);

이벤트처리하기 이벤트처리과정의예 종료버튼클릭 이벤트가발생하며, 이벤트소스에게전달됨 이벤트처리기가등록되어있는경우, 이벤트처리기가자동실행됨 this.addwindowlistener(new MyListener()); import java.awt.*; import java.awt.event.*; class MyListener implements 원소 WindowListener 탐색방법 { public void windowclosing(windowevent ev) { System.exit(0); for-each public void windowactivated(windowevent 구문 ev) { class MyFrame extends Frame { public MyFrame(String title) { super(title); this.setsize(400, 300); this.setvisible(true); this.addwindowlistener(new MyListener()); public void paint(graphics g) { g.drawstring("hello AWT", 150, 150); public class HelloAWT4 { public static void main(string args[]) { MyFrame myframe = new MyFrame("Hello AWT");

AWT 패키지의 GUI 컴포넌트 클래스유형 GUI 컨트롤컴포넌트배치그래픽출력컨테이너 클래스 Button, Label, Canvas, Choice, Checkbox 등 BorderLayout, FlowLayout, GridLayout 등 Color, Font, Point, Graphics, Image 등 Panel, Frame, Window 등 클래스계층구조 Component Button Canvas Checkbox Choice Label List Scrollbar Container TextComponent scrollpane Panel Window TextArea TextField Dialog Frame FileDialog

기타 AWT 의클래스들 Dimension 컴포넌트의너비와높이를저장 (width, height) Rectangle 사각형정보의저장 (x, y, width, height) Point 2 차원상의점을저장 (x, y) 기타 AWT 의클래스들 Color 색상을표현하기위한클래스 Color.WHITE, Color.balck, Color.BLUE Cursor 마우스커서의모양설정 Cursor.HAND_CURSOR 등 Font 문자출력에사용되는글자체를표현 이름, 스타일, 크기 Graphics 그래픽정보의저장

Component 클래스 메뉴를제외한 AWT 컴포넌트들의최상위추상클래스 컴포넌트들의기본메소드들을정의 중량컴포넌트 클래스가플랫폼에의존하는피어컴포넌트들로매핑됨 AWT 컴포넌트경량컴포넌트 자바시스템자체에서처리 Swing 컴포넌트 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()

컴포넌트색칠하기 색칠연산의유발 시스템의의해 컴포넌트가화면에처음등장했을때 크기가변하거나가려졌던부분이드러날때 프로그램에의해 다시칠해야할상황이될때 알고리즘에의해필요한경우 paint( ) 메소드 시스템에의해색칠하기가유발된경우자동호출되는콜백메소드 프로그램에서직접호출하지않음 Component또는 Container 클래스의 paint를재정의하여사용해야함 public void paint(graphics g) 매개변수 (Graphics 객체 ) : 컴포넌트가화면에그려질때사용되는그래픽관련정보가이미설정됨

repaint( ) 메소드 프로그램에의해색칠하기가필요한경우호출함 Component 클래스의 repaint를그대로사용하는것이일반적임 경량컴포넌트인경우 paint() 를호출 중량컴포넌트인경우 update() 를호출 update( ) 메소드 repaint() 에의해호출됨 재정의하지않은경우배경을다시칠하고 paint() 을호출함 ( 중량컴포넌트 ) 재정의하는경우필요한부분만다시그리면효과적

Update( ) 활용예 public class UpdateDemo { public static void main(string[] args) { Frame f1 = new Frame("Flash Clicker"); f1.add(new ClickCanvas(new Vector()), BorderLayout.CENTER); f1.pack();f1.show(); Frame f2 = new Frame("Smooth Clicker"); f2.add(new SmoothCanvas(new Vector()), BorderLayout.CENTER); f2.pack(); Rectangle f1rect = f1.getbounds(); f2.setlocation(f1rect.x+f1rect.width, f1rect.y); f2.show(); class ClickCanvas extends Canvas { public void paint(graphics g) { paintbackdrop(g); vectorspainted = 0; for(int i = 0 ; i < points.size()-1; i++) { paintvector(g, i); class SmoothClickCanvas extends ClickCanvas { public SmoothClickCanvas(Vector points) {super(points); public void update(graphics g) { for (int i = vectorspainted; i < points.size()-1; i++) { paintvector(g, i);

Window 클래스 Window 최상위수준의컨테이너 다른컨테이너의사각영역에포함될수없음 제목이나테두리가없으며메뉴바를가지지않음 생성자 Window(Frame owner), Window(Window owner) Frame 클래스 Frame 최상위수준의컨테이너 부모컴포넌트를가지지못함 제목과테두리가있으며메뉴를가질수있음 기본레이아웃은 BorderLayout