<4D F736F F F696E74202D20C1A63236C0E520BED6C7C3B8B428B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

Similar documents
<4D F736F F F696E74202D20C1A63233C0E520B1D7B7A1C7C820C7C1B7CEB1D7B7A1B9D628B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

<4D F736F F F696E74202D20C1A63139C0E520B9E8C4A120B0FCB8AEC0DA28B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

10-Java Applet

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

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

<4D F736F F F696E74202D20C1A63138C0E520C0CCBAA5C6AE20C3B3B8AE28B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

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

자바로

PowerPoint Presentation

Chap12

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

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

오버라이딩 (Overriding)

PowerPoint Presentation

10장.key

Microsoft PowerPoint - 04-UDP Programming.ppt

8장.그래픽 프로그래밍

<4D F736F F F696E74202D20C1A63230C0E520BDBAC0AE20C4C4C6F7B3CDC6AE203128B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

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

Microsoft PowerPoint - 14주차 강의자료

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

Network Programming

Microsoft PowerPoint - Java-03.pptx

9장.key

歯NetworkKawuiBawuiBo.PDF

Microsoft PowerPoint - 06-Chapter09-Event.ppt

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

No Slide Title

PowerPoint Presentation

PowerPoint Presentation

No Slide Title

03-JAVA Syntax(2).PDF

Cluster management software

PowerPoint 프레젠테이션

슬라이드 1

쉽게 풀어쓴 C 프로그래밍

11장.key

강의자료

뇌를 자극하는 JSP & Servlet 슬라이드

혼자서일을다하는 JSP. 이젠일을 Servlet 과나눠서한다. JSP와서블릿의표현적인차이 - JSP는 <html> 내에서자바를사용할수있는수단을제공한다. - 서블릿은자바내에서 <html> 을작성할수있는수단을제공한다. - JSP나서블릿으로만웹페이지를작성하면자바와다양한코드가

Java Programing Environment

PowerPoint 프레젠테이션

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

05-class.key

MasoJava4_Dongbin.PDF

제11장 프로세스와 쓰레드

PowerPoint Presentation

<4D F736F F F696E74202D20C1A63038C0E520C5ACB7A1BDBABFCD20B0B4C3BC4928B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

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

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

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

슬라이드 1

JAVA PROGRAMMING 실습 09. 예외처리

Spring Boot

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

쉽게 풀어쓴 C 프로그래밊

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

쉽게

rmi_박준용_final.PDF

PowerPoint Presentation

서블릿의라이프사이클 뇌를자극하는 JSP & Servlet

JAVA PROGRAMMING 실습 08.다형성

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

ch09

본 강의에 들어가기 전

JMF3_심빈구.PDF

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

중간고사

No Slide Title

PowerPoint Presentation

쉽게 풀어쓴 C 프로그래밍

쉽게 풀어쓴 C 프로그래밍

슬라이드 1

Java ~ Java program: main() class class» public static void main(string args[])» First.java (main class ) /* The first simple program */ public class

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

다른 JSP 페이지호출 forward() 메서드 - 하나의 JSP 페이지실행이끝나고다른 JSP 페이지를호출할때사용한다. 예 ) <% RequestDispatcher dispatcher = request.getrequestdispatcher(" 실행할페이지.jsp");

<4D F736F F F696E74202D20C1A63234C0E520C0D4C3E2B7C228B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

02 C h a p t e r Java

09-interface.key

쉽게 풀어쓴 C 프로그래밍

PowerPoint 프레젠테이션

쉽게 풀어쓴 C 프로그래밍

PowerPoint 프레젠테이션

12-file.key

Cluster management software

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

슬라이드 1

Microsoft PowerPoint - Supplement-03-TCP Programming.ppt [호환 모드]

PowerPoint Presentation

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

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

PowerPoint Template

Spring Boot/JDBC JdbcTemplate/CRUD 예제

PowerPoint Presentation

어댑터뷰

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

PowerPoint Presentation

5장.key

PowerPoint Presentation

TCP/IP Model

Transcription:

Power Java 제 26 장애플릿 이번장에서학습할내용 애플릿소개 애플릿작성및소개 애플릿의생명주기 애플릿에서의그래픽컴포넌트의소개 Applet API의이용 웹브라우저상에서실행되는작은프로그램인애플릿에대하여학습합니다.

애플릿이란? 애플릿은웹페이지같은 HTML 문서안에내장되어실행되는자바프로그램이다. 애플릿을실행시키는두가지방법 1. 웹브라우저를이용하는방법 2. Appletviewer를이용하는방법 ( 예 ) C>appletviewer example1.html

애플릿에서할수있는것 그래픽을포함한거의모든자바라이브러리를사용할수있다. ( 예 ) 애플릿과애플리케이션의비교 애플릿 main() 메소드를가지지않음 웹을통하여쉽게실행 현재동작되는컴퓨터를변경할수없음 보안측면에서우수 애플리케이션 main() 메소드를가지고여기서부터모든작업이시작 자바웹스타트 (Java Web Start) 기능을이용하면쉽게웹을통하여다운로드되어서실행

전형적인애플릿의구조 public class MyApplet extends JApplet { public void init() { // 애플릿초기화 public void start() { // 애플릿의실행시작 public void stop() { // 애플릿의실행정지 public void destroy() { // 애플릿의종료 public void paint(graphics g) { // 그림을그리는코드... 애플릿위에그림을그린다. import java.awt.graphics; import javax.swing.japplet; 애플릿 #1 JApplet을상속받는다. public class MyApplet extends JApplet { public void paint(graphics g) { super.paint(g); g.drawstring(" 애플릿프로그래머여러분안녕하세요?", 50, 25); Paint() 메소드를재정의한다.

애플릿을실행시키려면 Test.html 파일을작성한다. <html> </html> <body> <applet code="myapplet MyApplet.class class" width=400 height=100> </applet> </body> Appletviewer 로실행한다. C> appletviewer Test.html 애플릿이들어있는위치지정 절대경로형식 <applet codebase="http://test.sch.ac.kr/pub/java" code="myapplet.class" width=200 height=80> </applet> 상대경로형식 <applet codebase="pub/java" code="myapplet.class" width=200 height=80> </applet>

import java.awt.color; import java.awt.graphics; import javax.swing.japplet; 애플릿 #2 public class MyApplet1 extends JApplet { Paint() 메소드를 public void paint(graphics g) { 재정의한다. super.paint(g); g.setcolor(color.yellow); g.filloval(0, 0, getsize().width - 1, getsize().height - 1); g.setcolor(color.black); g.drawstring(" 그래픽도사용할수있죠!", 10, getsize().height / 2); 그래픽메소드사용 import javax.swing.japplet; import java.awt.graphics; 애플릿 #3 public class HelloWorld extends JApplet { public void paint(graphics g) { g.drawrect(0, 0, getsize().width - 1, getsize().height -1); g.drawstring("hello world!", 5, 15); 애플릿의크기

애플릿의생명주기 애플릿과웹브라우저인터페이스 init() 애플릿을초기화하는메소드 애플릿이들어있는페이지를열때자동으로호출 start() 사용자가애플릿이포함된페이지를방문할때마다호출 stop() 사용자가애플릿이포함된페이지를떠날때호출된다. destroy() 브라우저가닫힐때만호출된다.

import java.awt.graphics; import javax.swing.japplet; 애플릿예제 public class MyApplet2 extends JApplet { StringBuffer output; public void init() { output = new StringBuffer(); output.append("init() "); repaint(); public void start() { output.append("start() "); repaint(); public void stop() { output.append("stop() "); repaint(); 애플릿 #2 public void destroy() { output.append("destroy() "); repaint(); public void paint(graphics g) { super.paint(g); g.drawstring(output.tostring(), 10, 10);

실행결과 애플릿위에서 GUI 사용 모든 GUI 컴포넌트를사용할수있다. ( 예 ) 다음과같이마우스를클릭하면사각형을그리는애플릿을작성하여보자.

import java.awt.event.*; import java.applet.applet; import java.awt.color; import java.awt.graphics; 애플릿예제 public class MyApplet3 extends Applet implements MouseListener { int x, y; public void init() { addmouselistener(this); // 마우스리스너를등록한다. public void paint(graphics g) { super.paint(g); g.setcolor(color.red); g.fillrect(x, y, 20, 20); // 미우스의현재위치에사각형을그린다. 애플릿예제 public void mouseentered(mouseevent event) { public void mouseexited(mouseevent E event) { public void mousepressed(mouseevent event) { public void mousereleased(mouseevent event) { public void mouseclicked(mouseevent event) { x = event.getx(); // 미우스가클릭되면현재위치를얻는다. y = event.gety(); repaint(); // 다시화면을그린다. paint() 를직접호출하는것이아니라 repaint() 를호출한다.

import java.awt.event.*; import java.applet.applet; import java.awt.*; import javax.swing.*; 애플릿예제 public class MyApplet4 extends JApplet implements ActionListener { JTextField field; JTextArea area; public void init() { field = new JTextField(); area = new JTextArea(); setlayout(new BorderLayout()); add(field, BorderLayout.SOUTH); add(area, BorderLayout.CENTER); field.addactionlistener(this); 배치관리자를 BorderLayout 으로변경 애플릿예제 public void actionperformed(actionevent arg0) { area.append(field.gettext() + "\n"); field.selectall(); l area.setcaretposition(area.getdocument().getlength()); repaint(); 이벤트처리기작성.

애플릿매개변수 애플릿과웹브라우저는매개변수를통하여값들을주고받을수있다. HTML <APPLET CODE="test.class" WIDTH=200 HEIGHT=200> 파일 <PARAM NAME="imgDir" VALUE="java/images"> <PARAM NAME="bColor" VALUE="0xff00c0"> <PARAM NAME="COUNT" VALUE=20>... </APPLET> 애플릿 int count = 0;... String countstring = getparameter("count"); if (wstring!= null) { try { count = Integer.parseInt(countString); catch (NumberFormatException e) { count = 10; // 디폴트값을사용 애플릿이할수없는것 신뢰받지못한애플릿이할수없는기능은다음과같다. 라이브러리를적재하거나네이티브메소드를정의할수없다. 수행되고있는호스트컴퓨터의파일을읽고쓸수없다. 네트워크를통한연결을만들수없다. 호스트컴퓨터상의프로그램을실행시킬수없다. 호스트컴퓨터의시스템특성을읽을수없다.

Q & A