アプレットⅠ

Size: px
Start display at page:

Download "アプレットⅠ"

Transcription

1 アプレット Ⅰ 今回の課題項目 アプレット ( アプレットの作成 コーディング コンパイル 実行 ) アプレット ( グラフィックス表示 文字の描画 グラフィックスの描画 ) アプレット ( 各種グラフィックスメソッド ) 今回の重点項目 アプレット ( アプレットの作成 ) アプレット ( グラフィックス表示 ) アプレット ( グラフィックスメソッド ) -1-

2 アプレット Java はオブジェクト指向型のプログラム言語で有る Java では C 言語やPascal と謂う他のプログラム言語同様に 数値計算やファイル操作を行なう事は勿論 絵や文字の描画 アニメーション キーボードやマウスでの操作等も行なう事が出来る 但し Java の最大の特徴は Java で作成したプログラム ( アプレット ) をホームページ上に置く事が出来る為 ホームページの表現能力を大きく飛躍する事が出来る点に有る アプレットの仕組 アプレット (applet) アプレットとは 単独で動作する事は無く 他のアプリケーションの中に組み込まれた形で実行される小さなプログラムを謂う 実質的には WEB ブラウザ内に表示して実行するタイプのプログラムで有る Java 対応の Web ブラウザでは アプレットを表示する為の専用タグをサポートして居り HTML のタグを記述する丈で簡単にアプレットを呼び出す事が出来る アプレットは 今迄に作成したアプリケーションとは異なる構造を仕て居り アプリケーションを其の儘 HTML のタグから呼び出しても アプレットと仕て動かす事は出来ない アプレットと仕て使用するプログラムは アプレットと仕ての利用に必要な機能を備えて居なければ成らない Java には 其の為の専用クラス java.applet.applet が用意されて居る Applet クラスは WEB ページに埋め込まれるアプレット 又は Java アプレットビューアで表示されるアプレットのスーパークラスで有り アプレットと其の環境との間の標準インタフェースの役割を果たす 此のクラスを継承してクラス定義をすれば 其れが自動的にアプレットと仕て認識される様に成る アプレットのプログラム形式 アプレットのプログラムは 下記の様な形を仕て居る 但し Applet クラスで定義されて居る下記の総てのメソッドを記述する必要は無く 必要なメソッド丈をオーバーライドすれば良い import java.applet.applet; import java.awt.*; public class クラス名 extends Applet public void init() アプレットのロード時に実行 public void start() アプレットの開始時に実行 public void stop() アプレットの停止時に実行 public void destroy() アプレットのアンロード時に実行 public void paint() アプレットの表示で実行 アプレット用のソースコードは Applet クラスの継承と仕て作成する為 ファイルの冒頭で import する必要が有る 亦 継承なので アプレットのクラスは extends Applet で有る事が必要で有る 更に アプレットのクラスは ブラウザに依りインスタンス化されて実行される為 外部から参照可能と謂う意味で public 修飾子が付けられて居る事が必要で有る -2-

3 アプレットの作成 コーディング (coding) 下記のコードを テキストエディタで入力し HelloWorld.java と謂うファイル名で保存する import java.applet.applet; import java.awt.graphics; public class HelloWorld extends Applet public void paint(graphics g) g.drawstring("hello World!", 10, 10); paint メソッドは アプレットを描画する為のメソッドで有る paint メソッドの引数では アプレットの描画の対象と成るオブジェクトで有る Graphics クラスのインスタンスが渡されて来る 此のインスタンスは描画領域 色 フォント等 描画に関する様々な情報を管理して居る Graphics クラスは Java のグラフィカルユーザインタフェース (GUI) を提供するパッケージ java.awt(abstract Window Toolkit) で定義されて居り Java では 殆どのグラフィック系 ( 文字 画像の表示 ) に Graphics クラスを使用する 猶 アプレット自身も GUI コンポーネントで有る 猶 文字を表示するのに drawstring メソッドを使用して居る 此れは 画面に文字を描画するメソッドで Graphics クラスで定義されて居る コンパイル (compile) プログラムの記述が終了すれば コンパイルを行う 記述等に間違いが無ければ クラス名.class と謂うファイルが作成される ( 上記では HelloWorld.class) 実行 (execute) 作成したアプレットを WEB ブラウザで実行し 表示するには HTML ファイルで アプレットを表示する場所に 下記の様に APPLET タグを使用して記述する 猶 width と height には 表示するアプレットのサイズを指定する <APPLET CODE=" プログラム名 " WIDTH="width" HEIGHT="height"></APPLET> 例として 上記のプログラムをコンパイルして作成された HelloWorld.class の場合は 其れを表示させたい場所に下記の様に記述する <APPLET CODE="HelloWorld.class" WIDTH="300" HEIGHT="200"></APPLET> 此れで 指定の場所に HelloWorld が表示される 上記の例では 横 300 縦 200 の領域をアプレット用に確保して居る 此の領域は背景が表示されないので 背景画や背景色を設定して居る場合 其の大きさを確認する事が出来る 猶 領域外に文字を書いても画面には表示されない -3-

4 グラフィック表示 文字の描画 下記のコードを テキストエディタで入力し HelloWorld2.java と謂うファイル名で保存した後 コンパイルして HTML ファイルから呼び出し ブラウザで表示する import java.applet.applet; import java.awt.graphics; import java.awt.font; import java.awt.color; public class HelloWorld2 extends Applet public void paint(graphics g) g.drawstring("hello World!", 10, 10); // TimesRoman と言うフォントの通常フォントで 大きさが 18 ドットの文字を指定 g.setfont(new Font("TimesRoman", Font.PLAIN, 18)); g.drawstring("hello World!", 10, 40); // TimesRoman と言うフォントの通常フォントで 大きさが 36 ドットの文字を指定 g.setfont(new Font("TimesRoman", Font.PLAIN, 36)); g.drawstring("hello World!", 10, 70); // イタリック体の文字を書く g.setfont(new Font("TimesRoman", Font.ITALIC, 36)); g.drawstring("hello World!", 10, 110); // 太文字で書く g.setfont(new Font("TimesRoman", Font.BOLD, 36)); g.drawstring("hello World!", 10, 150); // 色を赤に変更して文字を書く g.setcolor(color.red); g.setfont(new Font("TimesRoman", Font.PLAIN, 36)); g.drawstring("hello World!", 10, 200); 此処では Graphics クラスで定義された下記のメソッドを使用して居る drawstring() 文字を書くメソッド setfont() 文字の大きさや書体を変えるメソッド setcolor() 文字の色を変えるメソッド亦 定数と仕て最初から用意されて居る色は 下記の13 色で有る black blue cyan darkgray gray green lightgray magenta orange pink red white yellow 此のアプレットは Sun Microsystems が提供して居る Java Plugin が無いと動作しない -4-

5 グラフィックスの描画 下記のコードを テキストエディタで入力し Draw.java と謂うファイル名で保存した後 コンパイルして HTML ファイルから呼び出し ブラウザで表示する import java.applet.applet; import java.awt.graphics; import java.awt.color; import java.awt.font; import java.awt.image; public class Draw extends Applet public void paint(graphics g) g.setcolor(color.black); g.drawrect(10, 10, 50, 50); g.setcolor(color.red); g.fillrect(70, 10, 50, 50); // (10,10)-(10+50,10+50) を対角とする // 四角形を黒色で描く // (70,10)-(120,60) の領域を // 赤で塗る g.drawline(130, 10, 170, 60); // (130,10)-(170,60) の線を書く ( 色は前の設定で赤 ) g.setcolor(color.green); g.drawarc(190, 10, 50, 50, 0, 360); g.setcolor(color.blue); g.fillarc(250, 10, 50, 50, 90, 180); g.setcolor(color.lightgray); g.fill3drect(310, 10, 50, 50, true); g.fill3drect(370, 10, 50, 50, false); // (190,10)-(240,60) に // 内接する円 ( 楕円 ) を 0 度から 360 度分描く // 角度 90 度の位置から // 180 度分 ( 半円 ) を塗り潰す // ボタン風の塗り潰し // 押される前 // 押された後 g.setcolor(new Color(127, 127, 255)); // 斯うすれば RGB で色を指定する事が出来る g.fillroundrect(10, 90, 80, 50, 10, 10); // 角の丸い四角 g.setcolor(new Color(160, 82, 45)); int xpoint[] = 150, 200, 180, 120, 100; int ypoint[] = 90, 110, 140, 140, 110; // (150, 90)-(200,110)-(180,140)-(120,140)-(100,110) で g.fillpolygon(xpoint, ypoint, 5); // 囲まれた領域を塗り潰す // squid.gif と言う画像ファイルを読み込み (250, 90) に表示 g.drawimage(getimage(getdocumentbase(), "squid.gif"), 250, 90, this); 画像ファイルは サーバから画像を取得するメソッドと表示するメソッドの 2 個が必要で有るが 取り敢えずはソースコードの様に 1 個の命令の様に使用する事が出来る 猶 アプレットに読み込める画像形式は GIF と JPEG で有る paint メソッドは 画面の描き換えが必要な時 即ち Java の有るサイトへアクセスした時やアイコン化状態から元に戻した時等に 自動的に呼び出されるメソッドで有る 其の為 態々 コードの中で paint メソッドを呼び出す必要が無い -5-

6 Graphics メソッド一覧 描画用の Graphics メソッドを 下記に示す 此等のメソッドは java.awt.graphics パッケージで 定義されて居る 猶 使用例中の g は Graphics クラスのオブジェクトを示す setfont 書式 setfont(font font) 表示する文字のフォントを font に切替える Font クラスのオブジェクト font は別で用意する必要が有る 使用例 g.setfont(new Font("TimesRoman", Font.PLAIN, 18)); // "TimesRoman" の通常フォントで 18dot のサイズを設定する // 通常は上記の様に Font クラスのコンストラクタと組み合わせて使用する 補足 Font クラスのコンストラクタの第 2 引数で使用出来る物は Font.PLAIN 通常 Font.ITALIC イタリック体 Font.BOLD 太字の3 種丈で有る setcolor 書式 setcolor(color c) 表示する色を c に切替える Color クラスのオブジェクト c は別で用意する必要が有る 使用例 g.setcolor(color.red); // 赤に設定する g.setcolor(new Color(100, 130, 34)); // R = 100, G = 130, B = 34 の抹茶色 // 既定色以外は Color クラスのコンストラクタを使用して RGB で指定する 補足 既定色は Color.white Color.lightgray Color.gray Color.darkGray Color.black Color.red Color.pink Color.orange Color.yellow Color.green Color.magenta Color.cyan Color.blue で有る drawstring 書式 drawstring(string str, int x, int y) x y の位置に文字列 str を表示する 表示するフォント 及び 色は setfont setcolor で設定する 使用例 g.drawstring("hello World!", 100, 100); // (100,100) の位置に Hello World! と表示する 補足漢字に付いては Unicode で漢字を書けば表示する事が出来る 但し Unicode で記述しなくても表示出来る場合も有る drawline 書式 drawline(int x1, int y1, int x2, int y2) (x1,y1) から (x2, y2) に線を引く 色は setcolor で設定する 使用例 g.drawline(100, 50, 130, 200);// (100, 50) - (130, 200) に線を引く 書式 補足 drawpolygon/fillpolygon drawpolygon(int xpoints[], int ypoints[], int npoints) fillpolygon(int xpoints[], int ypoints[], int npoints) x 座標の配列 xpoints と y 座標の配列 ypoints で指定された点を結ぶ閉じた多角形を描く npoints には 点の総数を指定する 始点と終点が一致しない場合は 自動的に両点間に線が引かれる -6-

7 書式 drawrect/fillrect drawrect(int x, int y, int width, int height) fillrect(int x, int y, int width, int height) (x, y) に width height の大きさの四角を描く fillrect は塗り潰し 色は setcolor で設定する 使用例 g.drawrect(50, 0, 100, 200); // (50, 0) - ( , ) を対角線とする四角を描く 補足左上座標と右下座標を指定するのでは無い事に注意 書式 drawarc/fillarc drawarc(int x, int y, int width, int height, int startangle int endangle) fillarc(int x, int y, int width, int height, int startangle, int endangle) 座標 (x, y) に有る大きさ width height の四角に内接する円弧を描く x の正の方向から startangle の角度から endangle 迄の弧を描く fillarc は塗り潰し 色は setcolor で設定する 使用例 補足 g.drawrect(50, 0, 100, 200);// (50, 0) - ( , ) を対角線とする四角を描く g.drawarc(0, 0, 100, 100, 0, 360);// 中心 (50, 50) 半径 50 の円を描く startangle,endangle の単位は度 startangle,endangle には負の値も使える 書式 使用例 draw3drect/fill3drect draw3drect(int x, int y, int width, int height, boolean raised) 座標 (x, y) に width height の大きさの四角を描く fillrect と違い 立体的な四角を描く raised が true の時は飛び出して居る四角 false なら凹んで居る四角に成る 色は setcolor で設定する g.fill3drect(50, 0, 100, 200, true);// (50, 0) - ( , ) を対角線とする四角を描く -7-

8 drawroundrect/fillroundrect 書式 drawroundrect(int x, int y, int width, int height, int arcwidth int archeight) fillroundrect(int x, int y, int width, int height, int arcwidth int archeight) 角の丸い四角を描く 色は setcolor で設定する 使用例 g.drawroundrect(50, 0, 100, 200, 10, 200); 書式 drawoval/filloval drawoval(int x, int y, int width, int height) filloval(int x, int y, int width, int height) 座標 (x, y) に有る大きさ width height の四角に内接する円弧を描く filloval は塗り潰し 色は setcolor で設定する 使用例 g.drawoval(0, 0, 100, 100);// 中心 (50, 50) 半径 50 の円を描く 書式 補足 drawpolyline drawpolyline(int xpoints[], int ypoints[], int npoints) x 座標の配列 xpoints と y 座標の配列 ypoints で指定された点を結ぶ連続した直線を描く npoints には 点の総数を指定する 始点と終点が一致しない場合は 図形は閉じない 書式 補足 drawimage drawimage(image img, int x, int y, ImageObserver observer) 座標 (x, y) に img で指定されたイメージを描く observer には イメージを描画するプロセスを通知するオブジェクトを指定する イメージ内の透明ピクセルは 背景に影響を及ぼさない 猶 drawimage メソッドで指定するイメージ img は java.applet パッケージの Applet クラスで定義されて居る getimage メソッドを使用して取得する getimage メソッドの書式は 下記の通りで有る getimage(url url, String name) // 記述例 :getimage(getdocumentbase(), "squid.gif") url : イメージのベース位置を示す絶対 URL( アプレットが存在する URL) name : イメージの位置 ( 引数 url との相対位置で指定する ファイル名 ) 亦 getimage メソッドで指定する url は java.applet パッケージの Applet クラスで定義されて居る getdocumentbase メソッドを使用して取得する 此のメソッドには 引数は無く 当該アプレットが組み込まれて居るドキュメント (HTML ファイル ) の URL を戻り値に返す -8-

9 パラメータの設定 パラメータ (parameter) とは Java では UNIX のコマンドのコマンド引数の様に パラメータを指定する事に依り プログラムを制御する事が出来る パラメータの指定は パラメータ 1= 値 1 パラメータ 2= 値 2 と謂う様に変数に値を代入してから アプレットを呼び出すイメージで有る パラメータ設定の方法 パラメータの設定は HTML で アプレットを呼び出す時に行う 通常 何もパラメータを設定しない時は アプレットの呼び出しは 前述した様に 下記の様に記述する <APPLET CODE=" プログラム名 " WIDTH="width" HEIGHT="height"></APPLET> width : アプレットを表示する領域の幅 height : アプレットを表示する領域の高さ プログラム名.class を パラメータ 1= 値 1 パラメータ 2= 値 2 と謂う 2 個のパラメータを指定して呼び出す場合 下記の様に HTML を記述する <APPLET CODE=" プログラム名.class" WIDTH="width" HEIGHT="height"> <PARAM NAME=" パラメータ 1" VALUE=" 値 1"> <PARAM NAME=" パラメータ 2" VALUE=" 値 2"> </APPLET> 猶 パラメータは 必要な丈 幾つでも指定する事が出来る パラメータ制御の出来るアプレットの作成 パラメータの値を取得するメソッドは getparameter メソッドで有る getparameter メソッドは java.applet パッケージの Applet クラスで定義されて居り 書式は 下記の通りで有る 変数 1 = getparameter ( " パラメータ 1" ); 上記の様に記述すると HTML で指定された パラメータ 1 の中身 (= 値 1) が 変数 1 に代入される ( 此の時 パラメータの名前は 大文字と小文字は区別されるので注意が必要で有る ) 亦 getparameter メソッドで取得される値は文字列で有る 若し 数字をパラメータに設定したい場合は 文字列を数字に変換する必要が有る 文字列の数値変換には int 型の場合は java.lang パッケージの Integer クラスで定義されて居る parseint メソッドを使用する i= Integer.parseInt("123"); 上記の様に記述すると 変数 i に整数 123 が代入される 猶 勿論 パラメータのデータ型に応じて Long や Float や Double 等のクラスのメソッドを使用して 文字列を数値に変換する -9-

10 下記のコードを テキストエディタで入力し HelloWorld3.java と謂うファイル名で保存した後 コンパイルして 実行する パラメータ Message で表示する文字列を パラメータ Color で描画色を パラメータ Location で x 座標を指定する事が出来る 猶 パラメータを指定しない場合は 夫々れの規定値が使用される 亦 パラメータ Color で指定出来る色は 赤 青 緑 黄色の4 色で 各々 Red Blue Green Yellow と 文字列定数で指定する import java.applet.applet; import java.awt.graphics; import java.awt.font; import java.awt.color; public class HelloWorld3 extends Applet String message = null; String colorname = null; String location = null; Color textcolor; int xlocation; // パラメータ変数 // パラメータ変数 // パラメータ変数 // 色を表す変数 // 位置を表す変数 // 此の関数はアプレットが最初に画面に現れた時に 1 回丈自動で呼ばれる public void init() message = getparameter("message"); // パラメータ Message の値が代入される if (message == null) // パラメータが無い時の処理 message = "Hello World!"; colorname = getparameter("color"); if (colorname == null) textcolor = Color.black; else if (colorname.equals("red")) textcolor = Color.red; else if (colorname.equals("blue")) textcolor = Color.blue; else if (colorname.equals("green")) textcolor = Color.green; else if (colorname.equals("yellow")) textcolor = Color.yellow; else textcolor = Color.black; location = getparameter("location"); if (location!= null) xlocation = Integer.parseInt(location); else xlocation = 10; // パラメータ Color の値が代入される // パラメータが無い時の処理 // 文字列の比較は斯う記述する // 但し colorname が null の時はエラーが発生 // 定義外の色を指定した時用 // 文字列を数値に変更 public void paint(graphics g) g.setfont(new Font("TimesRoman", Font.PLAIN, 36)); g.setcolor(textcolor); // 色の設定 g.drawstring(message, xlocation, 40); -10-

11 演習 文字列の描画 下記のコードを テキストエディタで入力し DrawString.java と謂うファイル名で保存した後 コンパイルして HTML ファイルから呼び出し ブラウザで表示する import java.applet.*; import java.awt.*; public class DrawString extends Applet Font textfont; String message="king of Squid"; String fontname="timesroman"; Color textcolor; Color bgcolor; Image g2; Graphics OffG; int ms_width; int h_size; int font_size=20; public void init() Dimension d = size(); g2 = createimage( d.width, d.height); OffG = g2.getgraphics(); textfont = new Font( fontname, Font.PLAIN, font_size ); textcolor = Color.red; bgcolor = Color.black; ms_width = getfontmetrics( textfont ).stringwidth( message); h_size = (int)(((d.height-font_size) /2)+ font_size -5); public void paint( Graphics g ) OffG.setColor( bgcolor ); OffG.fillRect( 0, 0, size().width, size().height); OffG.setFont( textfont ); OffG.setColor( textcolor ); OffG.drawString( message, (size().width-ms_width)/2, h_size ); g.drawimage( g2, 0, 0, null); public void update( Graphics g ) paint(g); -11-

12 Dimension d = size( ); HTML から受け取るアプレットの画面サイズを取得する g2 = createimage( d.width, d.height); OffG = g2.getgraphics( ); 描画画面と仮想描画画面を生成する 仮想画面に描画した後 其れを描画画面にコピーする方法を採れば 文字を動かした時等に発生するチラツキを無くす事が出来る ms_width = getfontmetrics( textfont ).stringwidth( message); フォントに依り文字幅が違う為 此の様に文字列の幅を計算する 但し 此の方法は文字幅を個別に計算して居る訳では無い h_size = (int)(((d.height-font_size) /2)+ font_size -5); 文字列の y 軸位置の算出する g.drawimage( g2, 0, 0, null); 仮想画面から アプレットの描画画面にコピーする public void update( Graphics g ) Window が隠れたり サイズが変更された時に此のメソッドが呼び出される 自動的に呼び出されるメソッド init メソッド init メソッドは アプレットが読み込まれた時に 1 度丈 自動的に呼び出される 其の為 此処で パラメータの読み込みや変数の初期化等を行う事が多い paint メソッド paint メソッドは 画面の描き換えが必要な時 (Java の有るサイトへアクセスした時やアイコン化して居たのを元に戻した時等 ) に 自動的に呼び出される 画像を描く命令を paint メソッドの中に記述する丈で プログラムで paint メソッドを呼び出す必要は無い 其の為 メソッド名を他の名前に変えて仕舞う事は出来ない repaint メソッド repaint メソッドは 最初 update メソッドを探しに行き update メソッドが見付かれば update メソッドを 見付からなければ画面をクリアしてから paint メソッドを呼び出す ( 此の説明は正確では無いが 此の様な動作を行うと考えると良い ) -12-

2 p.2 2 Java Hello0.class JVM Hello0 java > java Hello0.class Hello World! javac Java JVM java JVM : Java > javac 2> Q Foo.java Java : Q B

2 p.2 2 Java Hello0.class JVM Hello0 java > java Hello0.class Hello World! javac Java JVM java JVM : Java > javac 2> Q Foo.java Java : Q B 2 p.1 2 Java Java JDK Sun Microsystems JDK javac Java java JVM appletviewer IDESun Microsystems NetBeans, IBM 1 Eclipse 2 IDE GUI JDK Java 2.1 Hello World! 2.1.1 Java 2.1.1 Hello World Emacs Hello0.java

More information

Microsoft PowerPoint ppt

Microsoft PowerPoint ppt 独習 Java 第 3 版 13.1 アプレットの概要 13.2 最初の Java アプレット 13.3 アプレットのライフサイクル 13.4 Graphics クラス アプレットの概要 (1/3) Web ページの HTML ソースコードから参照されるプログラム Web サーバーからブラウザに動的にダウンロードされる ダウンロードされたアプレットはブラウザの環境で実行される アプレットビューアなどのツールで実行することもできる

More information

Java 2 p.2 2 Java Hello0.class JVM Hello0 java > java Hello0.class Hello World! javac Java JVM java JVM : Java > javac 2> Q Foo.java Java : Q 2.

Java 2 p.2 2 Java Hello0.class JVM Hello0 java > java Hello0.class Hello World! javac Java JVM java JVM : Java > javac 2> Q Foo.java Java : Q 2. Java 2 p.1 2 Java Java JDK Sun Microsystems Oracle JDK javac Java java JVM appletviewer IDE Sun Microsystems NetBeans, IBM 1 Eclipse 2 IDE GUI JDK Java 2.1 Hello World! 2.1.1 Java 2.1.1 Hello World Emacs

More information

2 p.2 2 Java Hello0.class JVM Hello0 java > java Hello0.class Hello World! javac Java JVM java JVM : Java > javac 2> Q Foo.java Java : Q B

2 p.2 2 Java Hello0.class JVM Hello0 java > java Hello0.class Hello World! javac Java JVM java JVM : Java > javac 2> Q Foo.java Java : Q B 2 p.1 2 Java Java JDK Sun Microsystems Oracle JDK javac Java java JVM appletviewer IDESun Microsystems NetBeans, IBM 1 Eclipse 2 IDE GUI JDK Java 2.1 Hello World! 2.1.1 Java 2.1.1 Hello World Emacs Hello0.java

More information

Microsoft PowerPoint - prog10.ppt

Microsoft PowerPoint - prog10.ppt プログラミング言語 3 第 10 回 (2007 年 12 月 03 日 ) 1 今日の配布物 片面の用紙 1 枚 今日の課題が書かれています 本日の出欠を兼ねています 2/40 1 今日やること http://www.tnlab.ice.uec.ac.jp/~s-okubo/class/java06/ にアクセスすると 教材があります 2007 年 12 月 03 日分と書いてある部分が 本日の教材です

More information

Microsoft PowerPoint - prog10.ppt

Microsoft PowerPoint - prog10.ppt プログラミング言語 3 第 10 回 (2007 年 12 月 03 日 ) 1 今日の配布物 片面の用紙 1 枚 今日の課題が書かれています 本日の出欠を兼ねています 2/40 今日やること http://www.tnlab.ice.uec.ac.jp/~s-okubo/class/java06/ にアクセスすると 教材があります 2007 年 12 月 03 日分と書いてある部分が 本日の教材です

More information

2 p.2 2 Java Hello0.class JVM Hello0 java > java Hello0.class Hello World! javac Java JVM java JVM : Java > javac 2> Q Foo.java Java : Q B

2 p.2 2 Java Hello0.class JVM Hello0 java > java Hello0.class Hello World! javac Java JVM java JVM : Java > javac 2> Q Foo.java Java : Q B 2 p.1 2 Java Java JDK Sun Microsystems Oracle JDK javac Java java JVM appletviewer IDESun Microsystems NetBeans, IBM 1 Eclipse 2 IDE GUI JDK Java 2.1 Hello World! 2.1.1 Java 2.1.1 Hello World Emacs Hello0.java

More information

Microsoft PowerPoint ppt

Microsoft PowerPoint ppt 独習 Java 第 3 版 13.9 Applet クラス 13.10 AppletContext インターフェイス 13.11 イメージの使用 Applet クラス 右の図は Applet クラスのスーパークラスの継承関係を示す 上の 4 つのクラスから Applet クラスに状態と動作が継承される java.lang.object Java.awt.Component java.awt.container

More information

JAVA入門

JAVA入門 JAVA 入 門 後 期 3 JAVAのGUI (JavaのGUI 基 本 構 造 いろいろなアプレット) 1.GUI 構 造 GUI 構 造 JAVAでGUIを 構 築 するクラスとして 下 記 のがあります 1アプレットパッケージ 2AWT 3Swing 特 に2 3はコンポーネント パッケージを 利 用 1アプレット 概 要 特 徴 GUI 構 造 1. 最 初 から GUI 環 境 が 用

More information

Microsoft PowerPoint - OOP.pptx

Microsoft PowerPoint - OOP.pptx 第 14 回 第 12 章アプレット 28 8 アプレットとは アプレット : ウェブ上で HTML のソースコードから参照されるプログラム.Web サーバや Web ブラウザ ( アプレットビューア ) から動的にアプレットはダウンロードされる. 289 HelloAp.java アプレットの基本事項 public class HelloAp extends Applet{ public void

More information

Microsoft PowerPoint prog1_doc2x.pptx

Microsoft PowerPoint prog1_doc2x.pptx アプレット public class extends Applet { public void paint(graphics g) { // アプレット描画 g.drawstring( Hello World, 10, 20 ); page 1 アプレット : 色 public class extends Applet { Color col; // カラークラス int red, grn, blu;

More information

以下に java.awt.graphics クラスの主なメソッドを示す (Graphics クラスの ) メソッド drawline(int x1, int y1, int x2, int y2) drawrect(int x, int y, int width, int height) fillr

以下に java.awt.graphics クラスの主なメソッドを示す (Graphics クラスの ) メソッド drawline(int x1, int y1, int x2, int y2) drawrect(int x, int y, int width, int height) fillr 第 5 章グラフィックス, スレッドとマウスイベントによる描画処理 描画処理およびマルチスレッドの基礎についてそれぞれ理解し,Java を用いてイベント処理を組み合わせたプログラムを作成する 5.1 描画処理 最初に, パネル上にグラフィックス描画を行う方法について説明する グラフィックスを表示するにはフレームにパネルを配置し, 処理内容を paintcomponent メソッド内に記述する paintcomponent

More information

2 p.2 2 Java > javac Hello0.java Hello0.class JVM Hello0 java > java Hello0.class Hello World! javac Java JVM java JVM : Java > javac 2> Q Foo.j

2 p.2 2 Java > javac Hello0.java Hello0.class JVM Hello0 java > java Hello0.class Hello World! javac Java JVM java JVM : Java > javac 2> Q Foo.j 2 p.1 2 Java Java JDK Sun Microsystems Oracle JDK javac Java java JVM appletviewer IDESun Microsystems Oracle NetBeans, IBM 1 Eclipse 2, JetBrains IntelliJ IDEA IDE GUI JDK Java 2.1 Hello World! 2.1.1

More information

Microsoft PowerPoint prog1_doc2.pptx

Microsoft PowerPoint prog1_doc2.pptx 2011 年 12 月 6 日 ( 火 ) プログラミング Ⅰ Java Applet プログラミング 文教大学情報学部経営情報学科堀田敬介 アプレット Applet public class クラス名 extends Applet { public void paint(graphics g) { // アプレット描画 g.drawstring( Hello World, 10, 20); 10

More information

2 p.2 2 Java Hello0.class JVM Hello0 java > java Hello0.class Hello World! javac Java JVM java JVM : Java > javac 2> Q Foo.java Java : Q B

2 p.2 2 Java Hello0.class JVM Hello0 java > java Hello0.class Hello World! javac Java JVM java JVM : Java > javac 2> Q Foo.java Java : Q B 2 p.1 2 Java Java JDK Sun Microsystems Oracle JDK javac Java java JVM IDESun Microsystems Oracle NetBeans, IBM 1 Eclipse 2, JetBrains IntelliJ IDEA IDE GUI JDK Java 2.1 Hello World! 2.1.1 Java 2.1.1 GUI

More information

Applet java.lang.object java.awt.component java.awt.container java.awt.panel java.applet.applet

Applet java.lang.object java.awt.component java.awt.container java.awt.panel java.applet.applet 13 Java 13.9 Applet 13.10 AppletContext 13.11 Applet java.lang.object java.awt.component java.awt.container java.awt.panel java.applet.applet Applet (1/2) Component GUI etc Container Applet (2/2) Panel

More information

アプレットの作成

アプレットの作成 - 1 - import java.applet.applet; import java.awt.graphics; public class HelloWorld extends Applet { public void init() { resize(150,60) ; public void paint ( Graphics g ) { g.drawstring("hello, world!",

More information

Java言語 第1回

Java言語 第1回 Java 言 語 第 6 回 Javaアプレット 知 的 情 報 システム 工 学 科 久 保 川 淳 司 kubokawa@me.it-hiroshima.ac.jp アプレットの 概 要 Javaアプレットプログラムの 動 作 Javaアプレット ***.class htmlファイル ***.html ブラウザ(IE Firefox 等 ) Java VM Webサーバ ローカルファイル クライアントコンピュータ

More information

表示の更新もそういた作業のひとつに当たる スレッドの使用アニメーション アニメーションやシミュレーションなどは画面の更新が一定のタイミングで行われていく この連続した画面の更新をスレッドを利用して行う しかし paint() メソッドを直接呼び出して表示を更新することはできない その理由

表示の更新もそういた作業のひとつに当たる スレッドの使用アニメーション アニメーションやシミュレーションなどは画面の更新が一定のタイミングで行われていく この連続した画面の更新をスレッドを利用して行う しかし paint() メソッドを直接呼び出して表示を更新することはできない その理由 Java 独習第 3 版 13.12 スレッドの使用 13.13 ダブルバッファリング 2006 年 7 月 12 日 ( 水 ) 南慶典 表示の更新もそういた作業のひとつに当たる 13.12 スレッドの使用アニメーション アニメーションやシミュレーションなどは画面の更新が一定のタイミングで行われていく この連続した画面の更新をスレッドを利用して行う しかし paint() メソッドを直接呼び出して表示を更新することはできない

More information

<4D F736F F F696E74202D AC C8899E D834F E >

<4D F736F F F696E74202D AC C8899E D834F E > Java 簡単な応用プログラム ( その 2) Java は すでにある部品群を上手く使ってプログラムを組み立てます 前回と同様に Frame を使って ウインドウを表示するプログラムを作りましょう. Frameは ウインドウを作るための部品で フレーム ( 枠 ) とタイトルおよび, 決められた仕組みが入っています. java.awt パッケージは, ウインドウ関連の部品が多くあります. javax.swing

More information

AWT setcolor, drawstring Java AWT Abstract Window Toolkit Graphics AWT import import java.awt.* ; // AWT Graphics import java.awt.graphics; // AWT Gra

AWT setcolor, drawstring Java AWT Abstract Window Toolkit Graphics AWT import import java.awt.* ; // AWT Graphics import java.awt.graphics; // AWT Gra AWT setcolor, drawstring Java AWT Abstract Window Toolkit Graphics AWT import // AWT Graphics import java.awt.graphics; // AWT Graphics paint g x y ( x, y ) drawline( x, y, x, y ) ; g.drawline( 20, 30,

More information

1 JAVA APPLET 実習 1. はじめに Java フォルダに applet フォルダを作成する 2. 実習問題の作成 J01.java public class J01 extends Applet{ public void paint(graphics kaku){ kaku.drawstring("hello World from Java!",60,70); j01.html

More information

GUIプログラムⅣ

GUIプログラムⅣ GUI プログラム Ⅳ 画像指定ウィンドウの生成 ファイル名 :awtimage.java import java.awt.*; import java.awt.event.*; public class awtimage extends Frame // コンポーネントクラスの宣言 Button btnbrowse; Label lblcaption7; TextField txtimage; //

More information

AWT setcolor, drawstring Java AWT Abstract Window Toolkit Graphics AWT import import java.awt.* ; // AWT Graphics import java.awt.graphics; // AWT Gra

AWT setcolor, drawstring Java AWT Abstract Window Toolkit Graphics AWT import import java.awt.* ; // AWT Graphics import java.awt.graphics; // AWT Gra AWT setcolor, drawstring Java AWT Abstract Window Toolkit Graphics AWT import // AWT Graphics import java.awt.graphics; // AWT Graphics paint g x y ( x, y ) drawline( x, y, x, y ) ; g.drawline( 20, 30,

More information

アプレットⅤ

アプレットⅤ アプレット Ⅴ JV5 今回の課題項目 アプレット ( シングルスレッド ) アプレット ( マルチスレッド ) アプレット ( スレッド処理 生成 起動 実行 停止 ) アプレット ( ダブルバッファリング ) ウィンドウ ( ウェイト ) 今回の重点項目 アプレット ( マルチスレッド ) アプレット ( ダブルバッファリング ) ウィンドウ ( ウェイト ) -1- アプレット マルチスレッド

More information

Java言語 第1回

Java言語 第1回 Java 言語 第 8 回ウインドウ部品を用いる (1) 知的情報システム工学科 久保川淳司 kubokawa@me.it-hiroshima.ac.jp 前回の課題 (1) マウスを使って, 前回課題で作成した 6 4 のマスの図形で, \ をマウスクリックによって代わるようにしなさい 前回の課題 (2) import java.applet.applet; import java.awt.*;

More information

< F2D82518CC282CC D2E6A7464>

< F2D82518CC282CC D2E6A7464> 2 個のさいころ 1. はじめに [Java アプレット ] [Java アプリケーション ] 2 個のさいころを同時に投げたときの目の出方を考えてみましょう この 2 個のさいころをそれぞれ さいころ Ⅰ さいころ Ⅱ とすると その目の出方は順に 1 1 2 1 3 1 4 1 5 1 6 1 1 2 2 2 3 2 4 2 5 2 6 2 1 3 2 3 3 3 4 3 5 3 6 3 1 4

More information

Microsoft PowerPoint - 第1回.pptx

Microsoft PowerPoint - 第1回.pptx 科目紹介 :UML によるソフトウェア設計 UML によるソフトウェア設計 三末和男 高橋伸 三谷純 中谷多哉子 開講日 月 2 金 1 2 授業の構成 Java プログラミング ( 三谷純 ) Java 集中講義 ( 高坂一城 : 高度 ITプログラム特別講義 II) Javaによるオブジェクト指向プログラミング ( 高橋伸 ) UMLおよび開発プロセス ( 中谷多哉子 ) TA:M2 島村祐介

More information

piyo0702a.rtfd

piyo0702a.rtfd 21 Rectangle & Rectangle2D 1 ウィンドウに矩形を描く方法を紹介します のに Rectangle2D.Float(float x, float y, float w, float h) があります が Python では double と float との違いを意識する必要はありません void drawrect(int x, int y, int width, int height)

More information

Java言語 第1回

Java言語 第1回 Java 言語 第 10 回ウインドウ型アプリケーション (1) 知的情報システム工学科 久保川淳司 kubokawa@me.it-hiroshima.ac.jp 前回の課題 (1) ボーダーレイアウト, グリッドレイアウト, パネルを使用して, 電卓風のボタンを実現する BorderLayout で NORTH, CENTER, SOUTH に分割 NORTHにはテキストフィールドを設定 CENTERにはパネルを使って9つのボタンを設定

More information

Javaプログラムの実行手順

Javaプログラムの実行手順 戻り値のあるメソッド メソッドには 処理に使用する値を引数として渡すことができました 呼び出し 側からメソッドに値を渡すだけでなく 逆にメソッドで処理を行った結果の値を 呼び出し側で受け取ることもできます メソッドから戻してもらう値のことを もどりち戻り値といいます ( 図 5-4) 図 5-4. 戻り値を返すメソッドのイメージ 戻り値を受け取ることによって ある計算を行った結果や 処理に成功したか失

More information

r6.dvi

r6.dvi I 2005 6 2005.11.18 1 1.1 2 Hello, World public class r5ex2 extends JApplet { Font fn = new Font("Helvetica", Font.BOLD, 24); g2.setfont(fn); for(int i = 0; i < 10; ++i) { g2.setpaint(new Color(100+i*5,

More information

< F2D B825082CC96E291E82E6A7464>

< F2D B825082CC96E291E82E6A7464> 3x+1 の問題 [Java アプレット ] [Java アプリケーション ] 1. はじめに どんな自然数から始めても良いので その数が偶数ならば2で割り 奇数ならば3 倍して1を加えることを繰り返します そうすると どんな自然数から始めても必ず1になるというのはほんとうなのでしょうか 例えば 11から始めると 11 34 17 52 26 13 40 20 10 5 16 8 4 2 1 となります

More information

ICONファイルフォーマット

ICONファイルフォーマット グラフィックス 画像フォーマットエンコーダパラメータ 様々なフォーマットで画像を保存 Bitmap クラスを用いる事でビットマップ JPEG GIF PNG 等様々なフォーマットの画像を読み込み操作する事が出来る 更に Bitmap クラスや Graphics コンテナを用いて描画処理等を施したイメージをファイルに保存する事も出来る 此の時 読み込めるフォーマット同様に保存するフォーマットを選択する事が出来る

More information

< F2D82B682E182F182AF82F12E6A7464>

< F2D82B682E182F182AF82F12E6A7464> 3 人のじゃんけん [Java アプレット ] [Java アプリケーション ] 1. はじめに A 君 B 君 C 君の 3 人でじゃんけんを 1 回するときの勝ち負けを考えてみましょう あいこの場合は A 君 B 君 C 君の順に グー グー グー チョキ チョキ チョキ パー パー パー グー チョキ パー グー パー チョキ チョキ グー パー チョキ パー グー パー グー チョキ パー

More information

text_13.dvi

text_13.dvi C 13 2000 7 9 13 Java(8) { Swing(2)(, ) 1 13.1 13 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 1 13.2 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :

More information

< F2D825282CC947B909482CC A815B83682E6A>

< F2D825282CC947B909482CC A815B83682E6A> 3 の倍数のトランプカード 1. はじめに [Java アプレット ] [Java アプリケーション ] ここにトランプが 1 組あります ジョーカー 2 枚を除いて 52 枚を使います 3 の倍数は スペード クローバ ダイヤ ハートに それぞれ 3 と 6 と 9 と 12 の 4 枚ずつあるので 4 4=16 枚あります この 52 枚のトランプから 1 枚引いたとき そのカードが 3 の倍数である確率を考えます

More information

< F2D92DE82E8914B82CC977088D32E6A7464>

< F2D92DE82E8914B82CC977088D32E6A7464> 釣り銭の用意の実験 [Java アプレット ] [Java アプリケーション ] 1. はじめに クラス会などの幹事を務めることはありませんか 幹事になったつもりで考えてみてください 仮に クラス会への参加者人数は 35 人で 会費は 3500 円であるとします また 参加者は 1000 円札 4 枚でお釣りを必要とする人と 1000 円札 3 枚と 500 円玉 1 個でお釣りの要らない人の 2

More information

Microsoft PowerPoint - lec06 [互換モード]

Microsoft PowerPoint - lec06 [互換モード] 内 容 Ⅶ. クラスの定義 クラス定義の基本 フィールドの定義 メソッド定義 例題 : 円クラスのフィールドとメソッドの定義 コンストラクタ 例題 :Circle2を使ったアプレット 1 2 クラス定義の基本 オブジェクト指向のプログラム プログラム実行時に登場するオブジェクトの性質や挙動を記述する オブジェクトの性質や挙動を記述したものが クラス である Java プログラムを書くとはクラスを定義すること

More information

教材ドットコムオリジナル教材 0から始めるiアフ リ リファレンス i アプリ簡易リファレンス ver i アプリ Java 独自のメソッド (1)iアプリの命令を使えるようにする import com.nttdocomo.ui.*; (2) 乱数を使う import java.u

教材ドットコムオリジナル教材 0から始めるiアフ リ リファレンス i アプリ簡易リファレンス ver i アプリ Java 独自のメソッド (1)iアプリの命令を使えるようにする import com.nttdocomo.ui.*; (2) 乱数を使う import java.u i アプリ簡易リファレンス ver0.1.5.1 1.i アプリ Java 独自のメソッド (1)iアプリの命令を使えるようにする import com.nttdocomo.ui.*; (2) 乱数を使う import java.util.random; int ; Random =new Random(); =Math.abs(.nextInt()% ); 0~ まで乱数を発生させます (3) 機種ごとの縦横幅を調べる

More information

< F2D F B834E2E6A7464>

< F2D F B834E2E6A7464> ランダムウォーク [Java アプレット ] [Java アプレリケーョン ] 1. はじめに 酔っぱらいは前後左右見境なくふらつきます 酔っぱらいは目的地にたどり着こうと歩き回っているうちに何度も同じところに戻って来てしまったりするものです 今 酔っぱらいが数直線上の原点にいるとします 原点を出発して30 回ふらつくとき 30 回目に酔っぱらいがいる位置は 出発点である原点からどれくらい離れてしまっているのでしょうか

More information

r3.dvi

r3.dvi 00 3 2000.6.10 0 Java ( 7 1 7 1 GSSM 1? 1 1.1 4 4a 4b / / 0 255 HTML X 0 255 16 (0,32,255 #0020FF Java xclock -bg #0020FF xclock ^C (Control C xclock 4c 1 import java.applet.applet; import java.awt.*;

More information

Local variable x y i paint public class Sample extends Applet { public void paint( Graphics gc ) { int x, y;... int i=10 ; while ( i < 100 ) {... i +=

Local variable x y i paint public class Sample extends Applet { public void paint( Graphics gc ) { int x, y;... int i=10 ; while ( i < 100 ) {... i += Safari AppletViewer Web HTML Netscape Web Web 13-1 Applet Web Applet init Web paint Web start Web HTML stop destroy update init Web paint start Web update Event Driven paint Signature Overwriting Overriding

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション オブジェクト指向 プログラミング演習 第 2 回クラス インスタンス メソッド コンストラクタ 先週の出席確認 Webブラウザはどのようなプログラムでできているかこの問に答える前に Webブラウザとは 何か? 普段使ってますよね? Webブラウザを使ってできることと Webブラウザがやっていることを区別する必要がある 何をすれば Web ブラウザ と言えるのか NHK チコちゃんに叱られる! Web

More information

スライド 1

スライド 1 グラフィックスの世界第 3 回 サイバーメディアセンター サイバーコミュニティ研究部門安福健祐 Processing によるアニメーション setup と draw void setup() size(400, 400); void draw() ellipse( mousex,mousey,100,100); void とか setup とか draw とかはじめて見る が出てきてややこしい ellipseは円描く関数でした

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション オブジェクト指向 プログラミング演習 第 4 回継承 オーバーライド ポリモルフィズム 今日のお題 継承 オーバーライド ポリモルフィズム 継承 (inherit) あるクラス c のサブクラス s を定義する : このとき s は c を継承していると言う 何かの下位概念を表すクラスは その上位概念を表すクラスの属性や機能を ( 基本的には ) 使える 継承の例 大学生 長崎県立大学の学生 大学生を継承する概念

More information

untitled

untitled Java 1 1 Java 1.1 Java 1.2 Java JavaScript 2 2.1 2.2 2.3 Java VM 3 3.1 3.2 3.3 3.4 4 Java 4.1 Java 4.2 if else 4.3 switch case 4.4 for 4.5 while 4.6 do-while 4.7 break, continue, return 4.8 try-catch-finally

More information

VB.NET解説

VB.NET解説 Visual Basic.NET 印刷編 目次 印刷の概要... 2 印刷の流れ... 2 標準の Windows フォーム印刷ジョブの作成... 3 実行時に於ける Windows フォーム印刷オプションの変更... 3 Windows フォームに於ける接続されたプリンタの選択... 4 Windows フォームでのグラフィックスの印刷... 5 Windows フォームでのテキストの印刷...

More information

< F2D82518E9F8AD CC95BD8D7388DA93AE2E6A7464>

< F2D82518E9F8AD CC95BD8D7388DA93AE2E6A7464> 2 次関数のグラフの平行移動 [Java アプレット ] [Java アプリケーション ] 1. はじめに 2 2 y=ax のグラフとy=a(x-b) +c のグラフは 位置は違うけれど 形も広がりも全く同じです 2 2 y=a(x-b) +c のグラフは y=ax のグラフをx 軸方向に ( 右方向に ) +b y 軸方向に ( 上方向に ) +c だけ平行移動したものです 2 シミュレーションソフト

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション オブジェクト指向 プログラミング演習 第 4 回継承 オーバーライド ポリモルフィズム 今日のお題 継承 オーバーライド ポリモルフィズム 継承 (inherit) あるクラス c のサブクラス s を定義する : このとき s は c を継承していると言う 何かの下位概念を表すクラスは その上位概念を表すクラスの属性や機能を ( 基本的には ) 使える 継承の例 大学生 長崎県立大学の学生 大学生を継承する概念

More information

Chapter 20. [ ] ; [ ] = new [ ] ; Color colors [ ] = new Color[ 20 ]; // 20 Button operations [ ] = new Button[ 10 ]; // 10 colors[ 3 ] = new Color( 1

Chapter 20. [ ] ; [ ] = new [ ] ; Color colors [ ] = new Color[ 20 ]; // 20 Button operations [ ] = new Button[ 10 ]; // 10 colors[ 3 ] = new Color( 1 Chapter 20. [ ] ; [ ] = new [ ] ; Color colors [ ] = new Color[ 20 ]; // 20 Button operations [ ] = new Button[ 10 ]; // 10 colors[ 3 ] = new Color( 10, 30, 40 ); gc.setcolor( colors[ 3 ] ); operations[

More information

< F2D89BA8EE882C E6A7464>

< F2D89BA8EE882C E6A7464> 下手な鉄砲も数撃ちゃ当たる!! [Java アプレット ] [Java アプリケーション ] 1. はじめに 鉄砲を10 回撃つと1 回当たる腕前の人が鉄砲を撃ちます 下枠の [ 自動 10 回 ] または [ 自動 50 回 ] または [ 自動 100 回 ] をクリックすると それぞれ10 回 50 回 100 回 実験を繰り返します ただし 1 回の実験につき20 発の鉄砲を発射します シミュレーションソフト

More information

< F2D E E6A7464>

< F2D E E6A7464> ピタゴラス数 [Java アプレット ] [Java アプリケーション ] 1. はじめに 2 2 2 三平方の定理 a +b =c を満たす3つの自然数の組 ( a, b, c) をピタゴラス数と言います ピタゴラス数の最も簡単な例として (3,4,5) がありますね このピタゴラス数を求めるには ピタゴラスの方法とプラトンの方法の2つの方法があります 2 2 ピタゴラス数 (a,b,c) に対して

More information

Java演習(2) -- 簡単なプログラム --

Java演習(2)   -- 簡単なプログラム -- Java public class Hello Hello (class) (field)... (method)... Java main Hello World(Hello.java) public class Hello { public static void main(string[ ] args) { public() (package) Hello World(Hello.java)

More information

19 3!! (+) (>) (++) (+=) for while 3.1!! (20, 20) (1)(Blocks1.java) import javax.swing.japplet; import java.awt.graphics;

19 3!! (+) (>) (++) (+=) for while 3.1!! (20, 20) (1)(Blocks1.java) import javax.swing.japplet; import java.awt.graphics; 19 3!!...... (+) (>) (++) (+=) for while 3.1!! 3.1.1 50 20 20 5 (20, 20) 3.1.1 (1)(Blocks1.java) public class Blocks1 extends JApplet { public void paint(graphics g){ 5 g.drawrect( 20, 20, 50, 20); g.drawrect(

More information

// ステージを設定します stage.setscene(scene); stage.settitle(" キャンバス "); // ステージを表示します stage.show(); public static void main(string[] args) launch(args); キャンバス

// ステージを設定します stage.setscene(scene); stage.settitle( キャンバス ); // ステージを表示します stage.show(); public static void main(string[] args) launch(args); キャンバス HCI プログラミング 11 回目グラフィックス 今日の講義で学ぶ内容 キャンバスと図形描画 マウスを用いたインタラクション ラジオボタンなど GUI 部品を用いたインタラクション キャンバスと図形描画 1 キャンバスに線を引いてみましょう 画用紙を表すキャンバスに図形を描くことができます ソースファイル名 :Sample11_1.java // HP よりインポート文をここへ貼り付けてください //

More information

< F2D82518E9F8AD CC834F CC8CFC82AB82C68D4C>

< F2D82518E9F8AD CC834F CC8CFC82AB82C68D4C> 2 次関数のグラフの向きと広がり [Java アプレット ] [Java アプリケーション ] 1. はじめに 2 2 y=ax のグラフについて x の係数 aが正のときと負のときでは グラフにどのような違いがあるでしょうか 2 2 y=ax のグラフについて x の係数 aが正のとき 係数 aの値が大きくなるにつれて グラフの広がりはどうなるでしょうか 2 2 y=ax のグラフについて x の係数

More information

問1

問1 2008/12/10 OOP 同演習小テスト問題 問 1. 次のプログラムの出力結果を a~d の中から選べ public class Problem1 { public static void main(string[] args){ int i =2; int j =3; System.out.println( i + j ); a) 23 b) 5 c) ij d) i+j 問 2. 次のプログラムの出力結果を

More information

HCI プログラミング 5 回目ウィンドウに画像を表示してみよう 今日の講義で学ぶ内容 画像の表示 画像のエフェクト 画像のビューポート指定 画像の表示 1 画像を表示してみましょう 画像の表示はクラス ImageView により管理されます ソースファイル名 :Sample5_1.java //

HCI プログラミング 5 回目ウィンドウに画像を表示してみよう 今日の講義で学ぶ内容 画像の表示 画像のエフェクト 画像のビューポート指定 画像の表示 1 画像を表示してみましょう 画像の表示はクラス ImageView により管理されます ソースファイル名 :Sample5_1.java // HCI プログラミング 5 回目ウィンドウに画像を表示してみよう 今日の講義で学ぶ内容 画像の表示 画像のエフェクト 画像のビューポート指定 画像の表示 1 画像を表示してみましょう 画像の表示はクラス ImageView により管理されます ソースファイル名 :Sample5_1.java // 画像の表示 public class Sample5_1 extends Application //

More information

Color frontcolor; // Color Graphics gc; // Graphics Frame window; // Frame Java 8-1 new ( ) ; Rectangle Java2 AWT window = new Frame( "Sample" ); rect

Color frontcolor; // Color Graphics gc; // Graphics Frame window; // Frame Java 8-1 new ( ) ; Rectangle Java2 AWT window = new Frame( Sample ); rect Chapter 8. 8.1. Template instance Java new ( ); Frame Color AWT new Frame( "Sample" ); // Sample new Color( 244, 33, 111 ); // RGB 244, 33, 111 new Constructor ; Copyright by Tatsuo Minohara 1999-2000

More information

グラフィックス

グラフィックス グラフィックス PictureBox の Image プロパティに関する良く有る勘違い PictureBox に画像を表示する方法と仕て PictureBox の Image プロパティを使う方法と Graphics の DrawImage メソッドを使う方法が有るが 此の 2 つの方法を混同し 正しく理解して居ない事が多い様で有る 例えば 下記に列挙する様な状況が 此れに該当する 1.PictureBox

More information

データアダプタ概要

データアダプタ概要 データベース TableAdapter クエリを実行する方法 TableAdapter クエリは アプリケーションがデータベースに対して実行出来る SQL ステートメントやストアドプロシージャで TableAdapter で型指定されたメソッドと仕て公開される TableAdapter クエリは 所有るオブジェクトのメソッドと同様に 関連付けられたメソッドを呼び出す事に依り実行出来る TableAdapter

More information

Java演習(6) -- 条件分岐 --

Java演習(6)   -- 条件分岐 -- (400, 300) 20 if-else (Stripe.java) import javax.swing.japplet; import java.awt.graphics; import java.awt.color; public class Stripe extends JApplet { public void paint(graphics g) { g.setcolor(color.white);

More information

< F2D B838A835882CC8CF68EAE2E6A7464>

< F2D B838A835882CC8CF68EAE2E6A7464> ウォーリスの公式 [Java アプレット ] [Java アプリケーション ] 1. はじめに 次のウォーリスの公式を用いて π の近似値を求めてみましょう [ ウォーリスの公式 ] π=2{ 2 2 4 4 6 6 1 3 3 5 5 7 シミュレーションソフト ウォーリスの公式による π の近似 を使って π の近似値が求まる様子を観察してみてください 2.Java アプレット (1) Javaプログラムリスト

More information

Graphical User Interface 描画する

Graphical User Interface 描画する Graphical User Interface 描画する オブジェクト指向プログラミング特論 2016 年度 只木進一 : 工学系研究科 2 描画の基本 javax.swing.jpanel に描画する paint() または paintcomponent() メソッドを上書きすることによって描画する この中で描画対象を描く 基本的図形要素は準備されている しかし 画面の重なりによる再描画の場合

More information

Java演習(4) -- 変数と型 --

Java演習(4)   -- 変数と型 -- 50 20 20 5 (20, 20) O 50 100 150 200 250 300 350 x (reserved 50 100 y 50 20 20 5 (20, 20) (1)(Blocks1.java) import javax.swing.japplet; import java.awt.graphics; (reserved public class Blocks1 extends

More information

第1章 ビジュアルプログラミング入門

第1章 ビジュアルプログラミング入門 第 9 章アプレット 学習内容とねらい 本章では Java 言語で作ったプログラムを Web ブラウザ上で動作させる方法を学習します Java 言語には これまで作成してきた Windows アプリケーションの他に Web ブラウザ上で動作させる事のできるアプレットという形態があります このアプレットを利用すれば Web 上で Java プログラムを公開することもできます アプレットは Java 言語の普及当初は

More information

Java 基礎問題ドリル ~ メソッドを理解する ~ 次のプログラムコードに 各設問の条件にあうメソッドを追加しなさい その後 そのメソッドが正しく動作することを検証するためのプログラムコードを main メソッドの中に追加しなさい public class Practice { // ここに各設問

Java 基礎問題ドリル ~ メソッドを理解する ~ 次のプログラムコードに 各設問の条件にあうメソッドを追加しなさい その後 そのメソッドが正しく動作することを検証するためのプログラムコードを main メソッドの中に追加しなさい public class Practice { // ここに各設問 Java 基礎問題ドリル ~ メソッドを理解する ~ 次のプログラムコードに 各設問の条件にあうメソッドを追加しなさい その後 そのメソッドが正しく動作することを検証するためのプログラムコードを main メソッドの中に追加しなさい public class Practice { // ここに各設問のメソッドを追加する public static void main(string[] args) {

More information

< F2D8EA CE909482CC92EA82852E6A7464>

< F2D8EA CE909482CC92EA82852E6A7464> 自然対数の底 e [Java アプレット ] [Java アプリケーション ] 1. はじめに 対数は 17 世紀にネイピアやビュルギといった数学者たちが生み出した関数である 円周率 πと自然対数の底 eとは密接な関係があり どちらも無理数で超越数 ( 整数係数の代数方程式の解にならない実数 ) である 1737 年 オイラーは eが無理数であることを示した 1873 年 フランスの数学者エルミートは

More information

10/31 Java AWTの基本構造(Frameクラスの継承) 演習課題資料

10/31 Java AWTの基本構造(Frameクラスの継承) 演習課題資料 10/28 Java AWT の基本構造 (Frame クラスの継承 ) 演習課題資料以下のプログラムを完成せよ 共通課題 1.Frame を生成するプログラム // Frame クラスを継承して 終了ボタンのみを定義した クラスの定義 class WhiteWindow 1 { // Frame クラスの継承をする (Frame クラスの拡張 ) WhiteWindow (String title){

More information

-1 new ( ) ; Rectangle Java2 AWT window = new Frame( "Sample" ); rectangle = new Rectangle( 100, 50 ); // // = new ( ) ; Frame window = new Frame( "Sa

-1 new ( ) ; Rectangle Java2 AWT window = new Frame( Sample ); rectangle = new Rectangle( 100, 50 ); // // = new ( ) ; Frame window = new Frame( Sa Template Instance Java new ; Frame Color AWT new Frame( "Sample" ); // Sample new Color( 244, 33, 111 ); // RGB 244, 33, 111 new Constructor ; Color frontcolor; // Color Graphics g; // Graphics Frame window;

More information

Microsoft PowerPoint - prog11.ppt

Microsoft PowerPoint - prog11.ppt プログラミング言語 3 第 11 回 (2007 年 12 月 10 日 ) 1 今日の配布物 片面の用紙 1 枚 今日の課題が書かれています 本日の出欠を兼ねています 2/57 1 今日やること http://www.tnlab.ice.uec.ac.jp/~s-okubo/class/java06/ にアクセスすると 教材があります 2007 年 12 月 10 日分と書いてある部分が 本日の教材です

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション オブジェクト指向 プログラミング演習 第 2 回クラス インスタンス メソッド フィールド コンストラクタ ICPC の宣伝 国際大学対抗プログラミングコンテスト 3 人一組のチームでプログラムを書く速さを競う 国内予選 : ネットワーク上で 6 月末 ~7 月頭 アジア地区予選 : 日本国内で秋に開催 世界大会 :2020 年は 6 月にモスクワで 参加登録締切 : 国内予選の 2~3 週間前 今年は

More information

< F2D A838B838D96402E6A7464>

< F2D A838B838D96402E6A7464> モンテカルロ法 [Java アプレット ] [Java アプリケーション ] 1. はじめに 一辺の長さが 2 の正方形とそれに内接する半径 1 の円が紙に書かれています この紙の上からたくさんのゴマをばらまきます 正方形の中に入ったゴマの数と そのうちで円の中に入ったゴマの数も数えます さあ このゴマの数からどうやって円周率 π を求めるのでしょうか 一辺の長さ2の正方形の面積は4で

More information

public static void main(... ) { Copyright by Tatsuo Minohara 2004 rev. Oct. 6 Macintosh Java Primer Chapter 3-2

public static void main(... ) { Copyright by Tatsuo Minohara 2004 rev. Oct. 6 Macintosh Java Primer Chapter 3-2 System.out.print( "Once upon a time, " ); System.out.println( "a rabbit lived in the forest." ); System.out.println( "His name was Melo." ); Once upon a time, a rabbit lived in the forest. His name was

More information

(Microsoft PowerPoint - \223\306\217KJAVA\221\346\202R\224\ ppt)

(Microsoft PowerPoint - \223\306\217KJAVA\221\346\202R\224\ ppt) 独習 Java 第 3 版 14.1 代行イベントモデル 14.2 イベントクラス 14.3 イベントリスナ 14.1 代行イベントモデル (1/3) アプレットは GUI を提供する GUI ベースのプログラムはイベントドリブンであり コンソールアプリケーションはイベントドリブンでない イベントドリブンとは ユーザや他のプログラムが実行した操作 ( イベント ) に対応して処理を行なうプログラムの実行形式

More information

ToDo: 今回のタイトル

ToDo: 今回のタイトル グラフの描画 プログラミング演習 I L03 今週の目標 キャンバスを使って思ったような図 ( 指定された線 = グラフ ) を描いてみる 今週は発展問題が三つあります 2 グラフの準備 値の算出 3 値の表示 これまでは 文字列や値を表示するのには 主に JOptionPane.showMessageDialog() を使っていましたが ちょっとしたものを表示するのには System.out.println()

More information

Java言語 第1回

Java言語 第1回 Java 言語 第 2 回簡単な Java プログラムの作成と実行 知的情報システム工学科 久保川淳司 kubokawa@me.it-hiroshima.ac.jp 簡単な Java プログラム Java プログラムのファイル名 Java プログラムのファイル名命名ルール ファイル名とクラス名は同じでなければならない HelloJava.java public class HelloJava { public

More information

ファイル操作-バイナリファイル

ファイル操作-バイナリファイル ファイル操作 バイナリ ファイルを読み書きする バイナリファイル ( 即ちテキストファイル以外のファイル ) を読み書きするには FileStream クラス (System.IO 名前空間 ) を利用する FileStream クラスはファイル用のストリームをサポートするクラスで有り Stream クラス (System.IO 名前空間 ) の派生クラスの 1 つで有る 基本的には コンストラクタで指定したファイルのストリームに対して

More information

データ構造とアルゴリズム論

データ構造とアルゴリズム論 第 1 章.Java による CG 作成方法 2 学習のねらい 1 先週に続いて Java 言語 (Eclipse 環境における ) を用いて CG( コンピュータグラフィックス ) を作成する方法の基礎を学習する 今回は ( 作成した )CG が自動的に再描画される様にするための処理 ( のプログラミング ) を学習する 今回の学習で Java による CG 作成方法を終了し 次週以降は CG 作成のアルゴリズムの学

More information

Microsoft PowerPoint - prog03.ppt

Microsoft PowerPoint - prog03.ppt プログラミング言語 3 第 03 回 (2007 年 10 月 08 日 ) 1 今日の配布物 片面の用紙 1 枚 今日の課題が書かれています 本日の出欠を兼ねています 2/33 今日やること http://www.tnlab.ice.uec.ac.jp/~s-okubo/class/java06/ にアクセスすると 教材があります 2007 年 10 月 08 日分と書いてある部分が 本日の教材です

More information

ルーレットプログラム

ルーレットプログラム ルーレットプログラム VB 2005 4 プログラムの概要 カジノの代表的なゲーム ルーレット を作成する 先ず GO! ボタンをクリックすると ルーレット盤上をボールが回転し 一定時間経過すると ボールが止まり 出目を表示するプログラムを作成する 出目を 1~16 大小 偶数奇数の内から予想して 予め設定した持ち点の範囲内で賭け点を決め 賭け点と出目に依り 1 点賭けの場合は 16 倍 其他は 2

More information

Java講座

Java講座 ブロック崩し 情報科学部コンピュータ科学科 2 年竹中優 ブロック崩しに必要なクラスを考えよう クラス構造を考える クラスを設計する 実行してみる 当たり判定 実行クラスを完成させる 2 とりあえず ボールとバーとブロックを表すクラスが必要である あとは それらをまとめる実行クラス (Applet クラスのサブクラス ) が必要である クラス名は それぞれ Ball, Bar, Block, Main

More information

Prog2_9th

Prog2_9th 2017 年 11 月 30 日 ( 木 ) 実施 Canvas による描画 Canvas とは Canvas は, 描画コールを保持するためのクラスである 描画には, 次の 4 つの要素が必要である (1) ビットマップピクセル ( 画素 ) を保持 (2) キャンバス描画コール ( ビットマップへの書き出し要請 ) に対応 (3) 描画プリミティブ描画領域, パス, テキスト, ビットマップ等

More information

プログラミング入門1

プログラミング入門1 プログラミング入門 2 第 6 回継承 コンストラクタ 1 講義資料について 新しい言語の機能 ( オブジェクト指向の機構 ) については 随時参考書などを参照するのがよい 過去の資料も参考になる http://java2005.cis.k.hosei.ac.jp/ 今回の範囲は 上記ページの 17 回に詳しい 2 テーマ : 継承 コンストラクタ 継承 (inheritance) インスタンス変数の継承

More information

Safari AppletViewer Web HTML Netscape Web Web 15-1 Applet Web Applet init Web paint Web start Web HTML stop destroy update init Web paint start Web up

Safari AppletViewer Web HTML Netscape Web Web 15-1 Applet Web Applet init Web paint Web start Web HTML stop destroy update init Web paint start Web up Safari AppletViewer Web HTML Netscape Web Web 15-1 Applet Web Applet init Web paint Web start Web HTML stop destroy update init Web paint start Web update Event Driven paint Signature Overwriting Overriding

More information

< F2D834F838C A815B A CC>

< F2D834F838C A815B A CC> グレゴリー ライプニッツの公式 [Java アプレット ] [Java アプリケーション ] 1. はじめに 次のグレゴリー ライプニッツの公式を用いて π の近似値を求めてみましょう [ グレゴリー ライプニッツの公式 ] π 4 =1-1 3 + 1 5-1 7 + 1 9-1 + 11 シミュレーションソフト グレゴリー ライプニッツの公式による π の近似 を使って π の近似値が求まる様子を観察してみてください

More information

Microsoft PowerPoint - prog11.ppt

Microsoft PowerPoint - prog11.ppt プログラミング言語 3 第 11 回 (2007 年 12 月 10 日 ) 1 今日の配布物 片面の用紙 1 枚 今日の課題が書かれています 本日の出欠を兼ねています 2/57 今日やること http://www.tnlab.ice.uec.ac.jp/~s-okubo/class/java06/ にアクセスすると 教材があります 2007 年 12 月 10 日分と書いてある部分が 本日の教材です

More information

Java講座

Java講座 ブロック崩し 情報科学部コンピュータ科学科 2 年竹中優 完成をイメージしよう ブロック崩しに必要なクラスを考えよう クラス構造を考える クラスを設計する 実行してみる 当たり判定 実行クラスを完成させる 2 3 とりあえず ボールとバーとブロックを表すクラスが必要である あとは それらをまとめる実行クラス (Applet クラスのサブクラス ) が必要である クラス名は それぞれ Ball, Bar,

More information

任意の加算プログラム

任意の加算プログラム HP Java CG Java Graphics CG CG CG paint CG CG paint CG paint Windows paint paint 17 // public Frame1() { enableevents(awtevent.window_event_mask); try { jbinit(); catch(exception e) { e.printstacktrace();

More information

プログラミング基礎I(再)

プログラミング基礎I(再) 山元進 クラスとは クラスの宣言 オブジェクトの作成 クラスのメンバー フィールド 変数 配列 メソッド メソッドとは メソッドの引数 戻り値 変数の型を拡張したもの 例えば車のデータベース 車のメーカー 車種 登録番号などのデータ データベースの操作 ( 新規データのボタンなど ) プログラムで使う部品の仕様書 そのクラスのオブジェクトを作ると初めて部品になる 継承 などの仕組みにより カスタマイズが安全

More information

< F2D A839382CC906A2E6A7464>

< F2D A839382CC906A2E6A7464> ビュホンの針 1. はじめに [Java アプレット ] [Java アプリケーション ] ビュホン ( Buffon 1707-1788) は 針を投げて円周率 πを求めることを考えました 平面上に 幅 2aの間隔で 平行線を無数に引いておきます この平面上に長さ2bの針を落とすと この針が平行線と交わる確立 pは p=(2b) (aπ) 1 となります ただし b

More information

Microsoft PowerPoint - OOP.pptx

Microsoft PowerPoint - OOP.pptx 第 5 回 第 3 章継承 91 継承 ( インヘリタンス ): ウインドウシステムを例に説明 図 3.1: ウインドウの中にラベル, ボタン, リストの部品 各部品の属性と操作共通の属性と操作 ウインドウ内の左上を原点として (x, y) で場所指定 : 属性 (width, height) でサイズ指定 : 属性 識別のための名前 (name): 属性 置く位置の指定 (setlocation,

More information

Microsoft PowerPoint - ruby_instruction.ppt

Microsoft PowerPoint - ruby_instruction.ppt Ruby 入門 流れ Ruby の文法 画面に出力 キーボードから入力 数値 文字列 変数 配列 ハッシュ 制御構造 ( 分岐 繰り返しなど ) if while case for each 関数 クラス Ruby とは プログラミング言語 インタプリタ言語 オブジェクト指向 国産 ウェブアプリケーションフレームワーク RubyOnRails で注目 弊社での Web アプリケーション開発に利用 画面に出力

More information

プログラミング入門1

プログラミング入門1 プログラミング入門 2 第 8 回表形式データ (1) 1 テーマ : 表形式データ (1) 配列と複合データを用いた表形式データ データの登録 データの検索 データの更新 実際的はソフトウェアでは 表形式データの ( 例えば データベースのデータ ) を利用する場面が非常に多く とても重要である そこで 表形式を扱うプログラミングを繰り返しとりあげる 2 テーマ : 表形式データ (1) 配列と複合データを用いた表形式データ

More information

PYTHON 資料 電脳梁山泊烏賊塾 PYTHON 入門 関数とメソッド 関数とメソッド Python には関数 (function) とメソッド (method) が有る モジュール内に def で定義されて居る物が関数 クラス内に def で定義されて居る物がメソッドに成る ( 正確にはクラスが

PYTHON 資料 電脳梁山泊烏賊塾 PYTHON 入門 関数とメソッド 関数とメソッド Python には関数 (function) とメソッド (method) が有る モジュール内に def で定義されて居る物が関数 クラス内に def で定義されて居る物がメソッドに成る ( 正確にはクラスが PYTHON 入門 関数とメソッド 関数とメソッド Python には関数 (function) とメソッド (method) が有る モジュール内に def で定義されて居る物が関数 クラス内に def で定義されて居る物がメソッドに成る ( 正確にはクラスがインスタンス化されてからメソッドに成る ) # 関数 def test_func(): print('call test_func') #

More information

ブロック パニック

ブロック パニック ブロックパニック VB 2005 9 プログラムの概要 壁が迫り来る不思議な空間のオリジナルゲーム ブロックパニック を作成する スタートボタンをクリックし上下左右の矢印キーで白猿を移動させる スペースキーを押すと 向いて居る方向の壁が後退する 左右の壁が合わさると ゲームは終了する 一般的に 実用プログラムに比較するとゲームプログラムは 高度なテクニックを要求される事が多い 此処では ゲームプログラムを作成する事に依り

More information

Prog2_12th

Prog2_12th 2018 年 12 月 13 日 ( 木 ) 実施クラスの継承オブジェクト指向プログラミングの基本的な属性として, 親クラスのメンバを再利用, 拡張, または変更する子クラスを定義することが出来る メンバの再利用を継承と呼び, 継承元となるクラスを基底クラスと呼ぶ また, 基底クラスのメンバを継承するクラスを, 派生クラスと呼ぶ なお, メンバの中でコンストラクタは継承されない C# 言語では,Java

More information

(1) プログラムの開始場所はいつでも main( ) メソッドから始まる 順番に実行され add( a,b) が実行される これは メソッドを呼び出す ともいう (2)add( ) メソッドに実行が移る この際 add( ) メソッド呼び出し時の a と b の値がそれぞれ add( ) メソッド

(1) プログラムの開始場所はいつでも main( ) メソッドから始まる 順番に実行され add( a,b) が実行される これは メソッドを呼び出す ともいう (2)add( ) メソッドに実行が移る この際 add( ) メソッド呼び出し時の a と b の値がそれぞれ add( ) メソッド メソッド ( 教科書第 7 章 p.221~p.239) ここまでには文字列を表示する System.out.print() やキーボードから整数を入力する stdin.nextint() などを用いてプログラムを作成してきた これらはメソッドと呼ばれるプログラムを構成する部品である メソッドとは Java や C++ などのオブジェクト指向プログラミング言語で利用されている概念であり 他の言語での関数やサブルーチンに相当するが

More information

JavaScript 演習 2 1

JavaScript 演習 2 1 JavaScript 演習 2 1 本日の内容 演習問題 1の解答例 前回の続き document.getelementbyid 関数 演習問題 4 イベント処理 基本的なフォーム テキストボックスの入力値の取得 演習問題 5 演習問題 1 prompt メソッドと document.write メソッドを用いて, ユーザから入力されたテキストと文字の色に応じて, 表示内容を変化させる JavaScript

More information