アプレット yukita@k.hosei.ac.jp プログラミング 第10回 アプレット yukita@k.hosei.ac.jp プログラミング第10回.

Slides:



Advertisements
Similar presentations
Ver 準備 Java フォルダに移動して …… mkdir Swing Swing フォルダに移動して …… cp ~gundam/Java/Swing. コマンドプロンプト ( JDK ) でないと起動 しないので注意!!!
Advertisements

プログラミング第5回 1 while ループ 文字列の操作
ソフトウェア工学 知能情報学部 新田直也. オブジェクト指向パラダイムと は  オブジェクト指向言語の発展に伴って形成され てきたソフトウェア開発上の概念.オブジェク ト指向分析,オブジェクト指向設計など,プロ グラミング以外の工程でも用いられる.  ソフトウェアを処理や関数ではなくオブジェク.
社会人学習講座 「Javaプログラミング概論」
GridLayout オブジェクト(省略)
2006年11月22日 植田龍男 Webサービス II (第9回) 年11月22日 植田龍男.
Imageの描画 画像を読み込んで表示すること。 import java.awt.*;が必要。
Applet 岡部 祐典 鈴木 敬幸.
WebサービスII (第10回) 2007年11月28日 植田龍男.
JAVA GUIプログラミング 第6回 TextFieldとLabel.
復習ーII (General Review II)
オブジェクト指向言語 第12回 アプレット.
JSFによるWebアプリケーション開発 第11回
Servlet J2EE I 第8回 /
JAVA GUIプログラミング 第1回 JAVAの実行 絵を描こう.
アプレット (Applet)について.
1.Java 概要 2.簡単なアプレット 3.動画を表示するアプレット 4.アプレットの改良 5.開発環境の利用(データベース)
Iアプリプログラミング その1  鳥居秀徳.
Javaでゲーム  山本拓弥.
Javaのインタフェース についての補足 2006年5月17日 海谷 治彦.
JAVA.
第2回:Javaの変数と型の宣言 プログラミングII 2007年10月2日.
 Applet アプレット ◇長い長いアプレット講座◇.
WebサービスII (第8回) 2007年11月14日 植田龍男.
繰り返し プログラミング 第4回 繰り返し プログラミング第4回.
JAVA GUIプログラミング 第5回 ボタンとそのイベント処理.
JSFによるWebアプリケーション開発 第6回
例外処理 Exception Handling
インタフェース プログラミング 第14回 インタフェース プログラミング第14回.
Bridge Pattern
Javaプログラムの実行まで バイト Javaの コード 実行 ソースコード Java ファイル名 ファイル名 abc.java
第14回独習Javaゼミ セクション1~3 発表者 直江 宗紀.
RMI ソフトウェア特論 第6回 /
プログラミング演習3 第2回 GUIの復習.
Stateful Session Beans
オブジェクト指向 プログラミング 第十四回 知能情報学部 新田直也.
Java入門 13.5カラーの使用 13.6テキストの表示                  2003/12/12                   紺野憲一.
Java/Swingについて (2) 2005年10月11日 海谷 治彦.
オブジェクト指向 プログラミング 第八回 知能情報学部 新田直也.
オブジェクト指向 プログラミング 第十一回 知能情報学部 新田直也.
第15回独習Javaゼミ セクション14~15 発表者 直江宗紀.
第8回 2007年6月15日 応用Java (Java/XML).
第3回 2007年4月27日 応用Java (Java/XML).
オブジェクト指向 プログラミング 第二回 知能情報学部 新田直也.
第4回 javaのプログラミング 04A2029           古賀慎也.
Javaによる Webアプリケーション入門 第6回
オブジェクト指向 プログラミング 第十四回 知能情報学部 新田直也.
暗号技術 ~JAVAプログラム①~ (5週目)
プログラミング演習3 第2回 GUIの復習.
Java/Swingについて (3) 2005年10月19日 海谷 治彦.
7.4 intanceof 演算子 7.5~7.9パッケージ 2003/11/28 紺野憲一
JAVA入門後期③ JAVAのGUI (JavaのGUI基本構造、いろいろなアプレット)
JAVA入門後期⑥ JAVAのAWTの基本構造 (レイアウトマネージャー、 ウインドウ型アプリケーション)
プログラミング言語論 第十四回 理工学部 情報システム工学科 新田直也.
Javaによる Webアプリケーション入門 第11回
Servlet ソフトウェア特論 第7回.
オブジェクト指向 プログラミング 第十ニ回 知能情報学部 新田直也.
Servlet J2EE I (データベース論) 第12回 /
JAVA入門後期④ イベント、AWT、の基本構造、スレッド
システムエンジニアリング演習 GUIの実現(1):AWT 11月6日.
オブジェクト指向 プログラミング 第八回 知能情報学部 新田直也.
ソフトウェア工学 知能情報学部 新田直也.
JAVA GUIプログラミング 第3回 イベント処理① マウスイベント.
オブジェクト指向言語論 第十二回 知能情報学部 新田直也.
Javaによる Webアプリケーション入門 第4回
Annotation EJB 3.0 コース 第3回 2006年8月4日.
Jakarta Struts (1) ソフトウェア特論 第10回.
プログラミング基礎a 第9回 Java言語による図形処理入門(1) Javaアプレット入門
オブジェクト指向言語論 第十一回 知能情報学部 新田直也.
プログラミング実習(Java) グラフィクス処理とGUIプログラミング 講師:坂口 利裕(横浜市立大学)
Presentation transcript:

アプレット yukita@k.hosei.ac.jp プログラミング 第10回 アプレット yukita@k.hosei.ac.jp プログラミング第10回

Application と applet 独立したJavaプログラムはアプリケーションと呼ばれ,最初にロードされるクラスの main メソッドの実行から始まる. アプレットは他のアプリケーションの一部として実行されるJavaプログラム。 ここで言う他のアプリケーションとは, WEBブラウザ JDK付属の appletviewer プログラミング第10回

アプレットの作成 import java.applet.*; main メソッドは不要で,以下のメソッドが必須。 javacでコンパイル initメソッド startメソッド stopメソッド destroyメソッド javacでコンパイル HTMLファイルが必要 プログラミング第10回

HelloApplet.java (List B-1, p.311) import java.awt.*; import java.applet.*; public class HelloApplet extends Applet { public void paint(Graphics g){ FontMetrics f=g.getFontMetrics(); int x=0; int y=f.getAscent(); g.drawString("HelloApplet", x, y); } プログラミング第10回

HelloApplet.html (List B-2, p.311) <BODY BGCOLOR="#FFFFCC"> <APPLET CODE="HelloApplet.class" WIDTH=400 HEIGHT=50> </APPLET> </BODY> </HTML> プログラミング第10回

実行方法 HelloApplet.htmlのアイコンをダブルクリックする。 その他いろいろ。 プログラミング第10回

Swingを使ったアプレットの例 インタフェースという言語要素の登場 MouseListener インタフェースの実装 プログラミング第10回

Pattern.java (Swing版) import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.applet.*; public class Pattern extends JApplet implements MouseListener{ final int R=10; int rw=R, rh=R; double rpar=1.0, gpar=1.0, bpar=1.0; Dimension dim; Image offimg; Graphics offgra; プログラミング第10回

Pattern.java (2) public void init(){ String s; s=getParameter("RECTWIDTH"); if(s!=null){ rw=Integer.parseInt(s); } s=getParameter("RECTHEIGHT"); rh=Integer.parseInt(s); addMouseListener(this); プログラミング第10回

Pattern.java (3) public void start(){ dim=getSize(); offimg=createImage(dim.width, dim.height); offgra=offimg.getGraphics(); } プログラミング第10回

Pattern.java (4) public void mouseClicked(MouseEvent e){ int ex=Math.abs(e.getX()-(dim.width-rw))/2; int ey=Math.abs(e.getY()-(dim.width-rh))/2; int dist2=ex*ex + ey*ey; if(-1<dist2 && dist2<1) dist2=1; rpar=Math.random() *ex*ex/dist2; gpar=Math.random() *ex*ey/dist2; bpar=Math.random() *ey*ey/dist2; repaint(); } プログラミング第10回

Pattern.java (5) public void mouseEntered(MouseEvent e){}; public void mouseExited(MouseEvent e){}; public void mousePressed(MouseEvent e){}; public void mouseReleased(MouseEvent e){}; public void update(Graphics g){ paint(g); } プログラミング第10回

Pattern.java (6) public void paint(Graphics g){ if(offgra==null) return; for(int y=0; y<dim.height; y+=rh){ for(int x=0; x<dim.width; x+=rw){ int ex=x-(dim.width-rw)/2; int ey=y-(dim.height-rh)/2; int dist2=ex*ex+ey*ey; int gr=(int)(dist2*rpar)%256; int gg=(int)(dist2*rpar)%256; int gb=(int)(dist2*rpar)%256; offgra.setColor(new Color(gr,gg,gb)); offgra.fillRect(x,y,rw,rh); } g.drawImage(offimg,0,0,this); プログラミング第10回

Pattern.html (1) <HTML> <BODY BGCOLOR="#FFFFCC"> マウスであちこちクリックするとパターンが変化します. <APPLET CODE="Pattern.class" WIDTH=300 HEIGHT=300> <PARAM NAME=RECTWIDTH VALUE=10> <PARAM NAME=RECTHEIGHT VALUE=10> </APPLET> <BR> プログラミング第10回

Pattern.html (2) 著作権については以下の通りなのですが、雪田が著者に無断で勝手に 一部改造しています。従いまして,このプログラムを公開することは 差し控えさせていただきます。 Copyright (C) 1998,1999 by <A HREF=http://www.st.rim.or.jp//~hyuki/>Hiroshi Yuki.</A> </BODY> </HTML> プログラミング第10回