Microsoft PowerPoint - prog11.ppt

Size: px
Start display at page:

Download "Microsoft PowerPoint - prog11.ppt"

Transcription

1 プログラミング言語 3 第 11 回 (2007 年 12 月 10 日 ) 1

2 今日の配布物 片面の用紙 1 枚 今日の課題が書かれています 本日の出欠を兼ねています 2/57

3 今日やること にアクセスすると 教材があります 2007 年 12 月 10 日分と書いてある部分が 本日の教材です 本日の内容 前回の課題の解答 Java アプレットその 2 AWT 3/57

4 最終レポートについて 4/57

5 課題について 最終レポートの課題を 今週の木曜日夜までに web にアップします 〆切は最後の授業 (2008 年 1 月 7 日 ) です 最後の授業では レポートと関係ない話をやります ( たぶん 入出力関係とスレッド ) レポートは 紙に印刷したものをレポートボックスに メールで s-okubo@ice.uec.ac.jp に 提出して貰います 5/57

6 前回の課題の解答 6/57

7 前回の課題 その 1: 次の仕様を満たす Java アプレット Sample10t.java を作り 提出しなさい html ファイルが無くともアプレットビューアで実行できること 実行すると 200x400 の画面が立ち上がる 200x400 の画面の 上半分の左半分をクリックすると 下半分に白い背景に黒く Hello World と表示される 上半分の右半分をクリックすると 下半分に黒い背景に黄色い円と白い四角が表示される 7/57

8 プログラムの設計方針 flag という整数型の変数を宣言 クリックしたときに実行される mousepressed では... クリックされた場所によって 0 か 1 の どちらかの値を flag に保存する その後 repaint を実行する 結果 paint も実行される paint では... flag の値に従って 下に描画を行う 同じ事ができれば 他の方法でも構いません 8/57

9 サンプルプログラム [1/4] import java.applet.applet; import java.awt awt.*;.*; import java.awt awt.event.*; /* /* */ */ 必要なパッケージを import 200x400 のサイズ <applet code="javaapplet10t.class" width=200 height=400> </applet> public class JavaApplet10t extends Applet implements MouseListener{ int intx=10,y=10; int int flag=0; flagを宣言マウスを使うので public void void init(){ MounseListenerを実装 addmouselistener(this); マウス関係のイベントを検知するように 9/57

10 サンプルプログラム [2/4] public void void paint(graphics g){ g){ if(flag==0){ g.setcolor setcolor(color.white); g.fillrect fillrect(0,200,200,400); g.setcolor setcolor(color.black); g.drawstring drawstring("hello World",30,240); else if(flag==1){ g.setcolor setcolor(color.black); g.fillrect fillrect(0,200,200,400); g.setcolor setcolor(color.yellow); g.drawarc drawarc(20,220,160,160,0,360); g.setcolor setcolor(color.white); g.drawrect drawrect(20,220,160,160); 下半分を白く塗り Hellow World を表示 下半分を黒く塗り 四角と円を表示 flag の値に従って 描画を行う 10/57

11 サンプルプログラム [3/4] public void voidmousepressed(mouseevent me){ me){ x=me.getx getx(); (); y=me.gety gety(); (); if((y>=0)&&(y<=200)){ if((x>=0)&&(x<100)){ flag=0; else if((x>=100)&&(x<200)){ flag=1; repaint(); クリックした場所が下半分か否かを判定 クリックした場所が右側か左側かを判定 クリック時のマウスの座標を保存クリックした 場所に応じた値に flag を設定 クリックした場所に応じた値に flag を設定 11/57

12 サンプルプログラム [4/4] public void voidmouseentered(mouseevent me){ me){ 残りの4つのメソッドをオーバーライド public void voidmouseexited(mouseevent me){ me){ public void voidmousereleased(mouseevent me){ me){ public void voidmouseclicked(mouseevent me){ me){ 12/57

13 AWT 13/57

14 Java とアプレット Java には GUI を作るのに便利なクラスファイルやインターフェイスが準備されています GUI に使用されるボタンやダイアログは すべてインスタンス ( オブジェクト ) として扱われます AWT と Swing があります AWT は Java に古くからあるものです あまり効率よく動いてはくれません Swing は AWT の欠点とかを改善するべく作られたものです 今回は AWT を 次回は Swing をやります 14/57

15 基本的な流れ 次のような手順を踏みます 1. 適切なインターフェースを実装する 2. 適切なインスタンスを宣言する 3. インスタンスを登録する 4. インスタンスに何らかのアクションが行われたときに ある動作を行いたいなら 1. Javaがそのアクションを関知するようにする ( リスナ登録する ) 2. そのアクションが行われたときに 何をするかを記述する 15/57

16 用意されているもの 次のようなものが利用できます ラベル ボタン テキストフィールド チェックボックス チェックボックスグループ ( ラジオボタン ) キャンバス リスト チョイス 16/57

17 ラベルその 1 ラベルとは... 文字列を画面に表示します インターフェース なし リスナ登録 なし クラス Label 17/57

18 ラベルその 2 インスタンス生成時に 文字列を指定します Label インスタンス名 = new Label(" 文字列 "); この文字列の長さが このインスタンスが持てる文字列の最大の長さになります クラス Label のメソッド settext(string ss) gettext() そのインスタンスに文字列 ss を設定します そのインスタンスの持っている文字列を返します 18/57

19 サンプルプログラム import java.applet.applet; import java.awt.*; import java.awt.event.*; /* /* <applet code="sample11a.class" width=200 height=400> </applet> */ */ public class Sample11a extends Applet{ インスタンスを生成 Label lb1 lb1 = new new Label("Sample11a"); String ss; ss; public void void init(){ インスタンスを登録 add(lb1); lb1.settext settext("test"); ss ss = lb1.gettext gettext(); メソッドは 普通に (); add(lb1); インスタンス名. メソッド名 で使用 19/57

20 ボタンその 1 ボタンとは... 押すことができるボタンを作ります インターフェース ActionListener クラス Button リスナ登録 addactionlistener( インスタンス名 ); 押されたときに呼び出されるメソッド actionperformed(actionevent e) 20/57

21 ボタンその 2 インスタンス生成時に 文字列を指定します Button インスタンス名 = new Button(" 表示する文字列 "); ボタンが押されたことを Java が検知するに次が必要 インスタンス名.addActionListener(this); ボタンが押されると actionperformed が実行されます 複数のボタンのインスタンスがあっても actionperformed は 1 つだけです どのボタンが押されたかは ActionEvent のオブジェクトのメソッド getsource() で知ることができます 21/57

22 サンプルプログラム [1/2] import java.applet.applet; import java.awt.*; import java.awt.event.*; /* /* <applet code="sample11b.class" width=200 height=400></applet> */ */ インターフェイス ActionListener を実装 public class Sample11b extends Applet implements ActionListener{ Button bt1 bt1 = new new Button("Button 1"); 1"); Button bt2 bt2 = new new Button("Button 2"); 2"); Label lb1 lb1 = new new Label("Sample11b"); インスタンスを生成 public void void init(){ bt1.addactionlistener addactionlistener(this); ボタンが押されたことを bt2.addactionlistener addactionlistener(this); 検知するようにする add(bt1); add(bt2); add(lb1); インスタンスを登録 22/57

23 サンプルプログラム [2/2] public void void actionperformed(actionevent e){ e){ if(e.getsource getsource() () == == bt1){ lb1.settext("bottun 01"); else if(e.getsource getsource() () == == bt2){ lb1.settext("bottun 02"); どのボタンが押されたかで条件分岐 ボタンが押されたときに行うことを書く 23/57

24 テキストフィールドその 1 テキストフィールドとは... テキストを入力できる場所です インターフェース ActionListener クラス TextField リスナ登録 addactionlistener( インスタンス名 ); リターンが押されたときに呼び出されるメソッド actionperformed(actionevent e) 24/57

25 テキストフィールドその 2 インスタンス生成時は次のようにします TextField インスタンス名 = new TextField(" 文字列 "); この場合 文字列の長さ文のサイズで表示されます また 文字列が最初に入った状態になります TextField インスタンス名 = new TextField( 値 ); ); この場合 値のサイズで表示されます TextField インスタンス名 = new TextField(" 文字列 ", ", 値 ); ); この場合 値のサイズで表示されます また 文字列が最初に入った状態になります 25/57

26 テキストフィールドその 3 ボタンが押されたことを Java が検知するに次が必要 インスタンス名.addActionListener(this); テキストフィールド内でリターンキーが押されると actionperformed が実行されます 複数のインスタンスがあっても actionperformed は 1 つだけです どのテキストフィールド内でリターンキーが押されたかは ActionEvent のオブジェクトのメソッド getsource() で知ることができます 26/57

27 テキストフィールドその 4 クラス TextField のメソッド settext(string ss) gettext() そのインスタンスに文字列 ss を設定します そのインスタンスの持っている文字列を返します 27/57

28 サンプルプログラム [1/2] import java.applet.applet; import java.awt.*; import java.awt.event.*; /* /* <applet code="sample11c.class" width=200 height=200></applet> */ */ インターフェイス ActionListener を実装 public class Sample11c extends Applet implements ActionListener{ TextField tf1 tf1 = new new TextField(" ("TextField TextField",20); Label lb1 lb1 = new new Label("Sample11c"); public void void init(){ インスタンスを生成 tf1.addactionlistener addactionlistener(this); add(tf1); テキストフィールド内で add(lb1); リターンが押された ことを検知するように インスタンスを登録 28/57

29 サンプルプログラム [2/2] public void void actionperformed(actionevent e){ e){ if(e.getsource getsource() () == == tf1){ lb1.settext(tf1. tf1.gettext gettext() ()); ()); tf1.settext settext("input here"); どのテキストフィールドでリターンが押されたかで条件分岐 テキストフィールド内でリターンが押されたときに行うことを書く 29/57

30 チェックボックスその 1 チェックボックスとは... 四角いボックスにチェックを入れるやつです インターフェース ItemListener クラス Checkbox リスナ登録 additemlistener( インスタンス名 ); リターンが押されたときに呼び出されるメソッド itemstatechanged(itemevent e) 30/57

31 チェックボックスその 2 インスタンス生成時は次のようにします Checkbox インスタンス名 = new Checkbox(" 文字列 "); チェックボックスが沢山必要なときは その数だけ インスタンスを生成することになります 31/57

32 チェックボックスその 3 チェックボックスの状態が変わったことを Java が検知するには 次のリスナ登録が必要です インスタンス名.addItemListener(this); チェックボックスがクリックされると itemstatechanged が実行されます 複数のインスタンスがあっても itemstatechanged は1つだけです どのボタンが押されたかは ItemEvent のオブジェクトのメソッド getsource() で知ることができます 32/57

33 チェックボックスその 4 クラス Checkbox のメソッド setstate(boolean) そのインスタンスの持つ状態を設定します 引数として true か false を渡します gettext() そのインスタンスの状態を返します チェックが入っていれば true を 無ければ false を返します 33/57

34 サンプルプログラム [1/2] import java.applet.applet; import java.awt.*; import java.awt.event.*; /* /* <applet code="sample11d.class" width=200 height=200></applet> */ */ インターフェイス ItemListener を実装 public class Sample11d extends Applet implements ItemListener{ Checkbox cb1 cb1 = new new Checkbox("Check Box Box 01"); Checkbox cb2 cb2 = new new Checkbox("Check Box Box 02"); Label lb1 lb1 = new new Label("Sample11d"); インスタンスを生成 public void void init(){ cb1.additemlistener additemlistener(this); チェックボックスの cb2.additemlistener additemlistener(this); 状態の変更を検知 add(cb1); するように add(cb2); add(lb1); インスタンスを登録 34/57

35 サンプルプログラム [2/2] public void void itemstatechanged(itemevent e){ e){ lb1.settext(cb1. cb1.getstate getstate() () + "-" "-" + cb2.getstate getstate() ()); ()); チェックボックスの状態が変わったときに行うことを書く 35/57

36 チェックボックスグループその 1 チェックボックスグループとは... どれか 1 つにのみチェックできるチェックボックスです インターフェース ItemListener クラス CheckboxGroup リスナ登録 additemlistener( インスタンス名 ); リターンが押されたときに呼び出されるメソッド itemstatechanged(itemevent e) 36/57

37 チェックボックスグループその 2 インスタンス生成時は次のようにします CheckboxGroup インスタンス名 = new CheckboxGroup(); チェックボックスグループは 複数のチェックボックスをグループに登録することにより作成します チェックボックスのインスタンス生成時に どのチェックボックスグループに属するのかを宣言します Checkbox インスタンス名 = new Checkbox(" 文字列 ", ", 初期状態, グループ名 ); ); 初期状態には true か false を指定します true な状態はグループ内に 1 つだけ許されます 37/57

38 チェックボックスグループその 3 チェックボックスグループはリスナ登録しません 代わりに チェックボックスをリスナ登録しておきます チェックボックスがクリックされると itemstatechanged が実行されます 複数のインスタンスがあっても itemstatechanged は 1 つだけです 38/57

39 サンプルプログラム [1/2] import java.applet.applet; import java.awt.*; import java.awt.event.*; /* /* <applet code="sample11e.class" width=200 height=200></applet> */ */ インターフェイス ItemListener を実装 public class Sample11e extends Applet implements ItemListener{ CheckboxGroup cbg1 cbg1 = new new CheckboxGroup(); Checkbox cb1 cb1 = new new Checkbox("Check Box Box 01",true,cbg1); Checkbox cb2 cb2 = new new Checkbox("Check Box Box 02",false,cbg1); Label lb1 lb1 = new new Label("Sample11d"); インスタンスを生成 public void void init(){ cb1.additemlistener additemlistener(this); cb2.additemlistener additemlistener(this); チェックボックスの add(cb1); 状態の変更を検知 add(cb2); するように add(lb1); インスタンスを登録 39/57

40 サンプルプログラム [2/2] public void void itemstatechanged(itemevent e){ e){ if(cb1.getstate() == == true){ lb1.settext("test 01"); else if(cb2.getstate() == == true){ lb1.settext("test 02"); チェックボックスの状態が変化したときに行うことを書く 40/57

41 リストその 1 リストとは... 一覧からどれか一つを選択するものです インターフェース ActionListener クラス List リスナ登録 addactionlistener( インスタンス名 ); ある項目がダブルクリックときに呼び出されるメソッド actionperformed(actionevent e) 41/57

42 リストその 2 インスタンス生成時は次のようにします List インスタンス名 = new List( 値 ); ); 引数として 一度に表示する項目数を指定します リスト内に表示する項目は List クラスのメソッド add を使って追加していきます 一度に表示できる項目数よりも add で追加された項目数の方が多い場合は スクロールバーが出ます 42/57

43 リストその 3 ダブルクリックされたことを Java が検知するのには次のリスナ登録が必要です インスタンス名.addActionListener(this); 項目がダブルクリックされると actionperformed が実行されます 複数のインスタンスがあっても actionperformed は 1 つだけです どのリストがダブルクリックされたかは ActionEvent のオブジェクトのメソッド getsource() で知ることができます 43/57

44 リストその 4 クラス Checkbox のメソッド add(" 文字列 ") リストに文字列を項目として追加します getselecteditem() 選択された項目を返します 44/57

45 サンプルプログラム [1/2] import java.applet.applet; import java.awt.*; import java.awt.event.*; /* /* <applet code="sample11f.class" width=200 height=200></applet> */ */ インターフェイス ActionListener を実装 public class Sample11f extends Applet implements ActionListener{ List List ls1 ls1 = new new List(3); Label lb1 lb1 = new new Label("Sample11d"); public void void init(){ インスタンスを生成 ls1.addactionlistener addactionlistener(this); ls1.add("test 001"); チェックボックスの項目を追加 ls1.add("test 002"); 状態の変更を検知 ls1.add("test 003"); するように ls1.add("test 004"); ls1.add("test 005"); ls1.add("test 006"); 45/57

46 サンプルプログラム [2/2] add(ls1); インスタンスを登録 add(lb1); public void void actionperformed(actionevent e){ e){ lb1.settext(ls1. ls1.getselecteditem getselecteditem() ()); ()); チェックボックスの状態が変化したときに行うことを書く 46/57

47 チョイスその 1 リストとは... 一覧からどれか一つを選択するものです インターフェース ItemListener クラス List リスナ登録 additermlistener( インスタンス名 ); ある項目が選択ときに呼び出されるメソッド itemstatechanged(itemevent e) 47/57

48 チョイスその 2 インスタンス生成時は次のようにします Choice インスタンス名 = new Choice(); リスト内に表示する項目は List クラスのメソッド add を使って追加していきます 一度に表示できる項目数は 1 つです プルダウンメニューにより 項目を選択します 48/57

49 チョイスその 3 項目が選択されたことを Java が検知するためには 次のリスナ登録が必要です インスタンス名.addItemListener(this); 選択された項目が変わったことが検知されると itemstatechanged が実行されます 複数のインスタンスがあっても itemstatechanged は 1 つだけです どのチョイスの状態が変更されたかが押されたかは ItemEvent のオブジェクトのメソッド getsource() で知ることができます 49/57

50 チョイスその 4 クラス Checkbox のメソッド add(" 文字列 ") リストに文字列を項目として追加します getselecteditem() 選択された項目を返します 50/57

51 サンプルプログラム [1/2] import java.applet.applet; import java.awt.*; import java.awt.event.*; /* /* <applet code="sample11g.class" width=200 height=200></applet> */ */ インターフェイス ItemListener を実装 public class Sample11g extends Applet implements ItemListener{ Choice ch1 ch1 = new new Choice(); Label lb1 lb1 = new new Label("Sample11d"); インスタンスを生成 public void void init(){ ch1.additemlistener additemlistener(this); ch1.add("test 001"); 項目を追加 ch1.add("test 002"); ch1.add("test 003"); add(ch1); add(lb1); インスタンスを登録 チェックボックスの状態の変更を検知するように 51/57

52 サンプルプログラム [2/2] public void void itemstatechanged(itemevent e){ e){ lb1.settext(ch1. ch1.getselecteditem getselecteditem() ()); ()); 選択されている項目が変化したときに行うことを書く 52/57

53 キャンバスその 1 キャンバスとは... 描画することができるフィールドです インターフェース なし リスナ登録 なし クラス Canvas 53/57

54 キャンバスその 2 実際にキャンバスを利用するときは 1. クラス Canvas をスーパークラスにもつサブクラスを作り 2. そのインスタンスを生成します します 描画は サブクラスを作るときに paint() メソッドをオーバーライドすることで行います 54/57

55 ラベルその 2 クラス Cancas のメソッド paint(graphics g) 普通 サブクラスでオーバーライドします setsize(int width, int height) キャンバスのサイズを設定します width の幅と hieght の高さになります 55/57

56 サンプルプログラム [1/2] import java.applet.applet; import java.awt.*; import java.awt.event.*; /* /* <applet code="sample11h.class" width=200 height=200> </applet> */ */ Canvasをスーパークラス class TestCanvas extends Canvas{ に持つサブクラスを作る public void void paint(graphics g){ g){ g.drawarc(20,20,160,160,0,360); g.drawrect(20,20,160,160); paintを書く 56/57

57 サンプルプログラム [1/2] public class Sample11h extends Applet{ TestCanvas cv1 cv1 = new new TestCanvas(); (); public void void init(){ cv1.setsize setsize(100,100); add(cv1); インスタンスを登録 インスタンスを生成 インスタンスの表示サイズを設定 57/57

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

Microsoft PowerPoint - prog12.ppt

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

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

15 Java 15.5 15.6 15.7 Checkbox() Checkbox(String str) Checkbox(String str, boolean state) Checkbox(String str, boolean state, CheckboxGroup grp) Checkbox(String str, CheckboxGroup grp, boolean state)

More information

Microsoft PowerPoint - prog09.ppt

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

More information

Microsoft PowerPoint - prog09.ppt

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

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

Java言語 第1回

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

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

Microsoft PowerPoint - prog13.ppt

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

More information

PowerPoint Presentation

PowerPoint Presentation 上級プログラミング 2( 第 3 回 ) 工学部情報工学科 木村昌臣 今日のテーマ GUI プログラミング入門 AWT Java で GUI を作る方法 (API) AWT Abstract Window Toolkit GUIをつくるクラス群を提供 ( 基本!) OSによらない外観 Swing 逆にいえば OS ネイティブな look and feel ではない AWT をもとに JavaFX JDK1.8

More information

ガイダンス

ガイダンス プログラムの 1 行目に以下のように自分の入れること // vm12345 杉崎えり子 情報科学 B 第 10 回 GUI 情報科学 B Info2/3 info10 今日のフォルダー作成 Example10_1.java 1 今日やること Windows などで見られるウィンドウを作 成して (GUI プログラム ) そこに実行結 果を表示させる 2 ウィンドウの作成 Java を使用してウィンドウの作成をしたい

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

ガイダンス

ガイダンス プログラムの 1 行目に以下のように自分の入れること // vm12345 杉崎えり子 情報科学 B 第 10 回 GUI 情報科学 B Info2/3 info10 今日のフォルダー作成 Example10_1.java 1 今日やること Windows などで見られるウィンドウを作 成して (GUI プログラム ) そこに実行結 果を表示させる 2 ウィンドウの作成 Java を使用してウィンドウを作成をしたい

More information

Microsoft PowerPoint - prog13.ppt

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

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

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

Java言語 第1回

Java言語 第1回 Java 言語 第 11 回ウインドウ型アプリケーション (2) 知的情報システム工学科 久保川淳司 kubokawa@me.it-hiroshima.ac.jp メニュー (1) メニューを組み込むときには,MenuBar オブジェクトに Menu オブジェクトを登録し, その Menu オブジェクトに MenuItem オブジェクトを登録する 2 つの Menu オブジェクト File New

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

< 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

< F2D F B834E2E6A7464>

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

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

< 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

< 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

HCI プログラミング 8 回目ボタン チェックボックス ラジオボタン 今日の講義で学ぶ内容 ボタンとアクションイベント ボタンのカスタマイズ チェックボックスとラジオボタン ボタンとアクションイベント 1 ボタンを配置してみましょう ボタンは ラベルと同じようにフォントやその色 画像の貼り付けなど

HCI プログラミング 8 回目ボタン チェックボックス ラジオボタン 今日の講義で学ぶ内容 ボタンとアクションイベント ボタンのカスタマイズ チェックボックスとラジオボタン ボタンとアクションイベント 1 ボタンを配置してみましょう ボタンは ラベルと同じようにフォントやその色 画像の貼り付けなど HCI プログラミング 8 回目ボタン チェックボックス ラジオボタン 今日の講義で学ぶ内容 ボタンとアクションイベント ボタンのカスタマイズ チェックボックスとラジオボタン ボタンとアクションイベント 1 ボタンを配置してみましょう ボタンは ラベルと同じようにフォントやその色 画像の貼り付けなどを設定できます ソースファイル名 :Sample8_1.java // HP よりインポート文をここへ貼り付けてください

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

ガイダンス

ガイダンス プログラムの 1 行目に以下を入れること // vm12345 杉崎えり子 情報科学 B 第 10 回 GUI 情報科学 B Info2/3 info10 今日のフォルダー作成 Example10_1.java 1 今日やること Windows などで見られるウィンドウを作 成して (GUI プログラム ) そこに実行結 果を表示させる 2 ウィンドウの作成 Java を使用してウィンドウの作成をしたい

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

< 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

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

Microsoft PowerPoint - prog04.ppt

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

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

Assignment_.java /////////////////////////////////////////////////////////////////////// // 課題 星の画像がマウスカーソルを追従するコードを作成しなさい 次 ///////////////////

Assignment_.java /////////////////////////////////////////////////////////////////////// // 課題 星の画像がマウスカーソルを追従するコードを作成しなさい 次 /////////////////// Assignment_.java 0 0 0 0 0 /////////////////////////////////////////////////////////// // 課題 次のようにマウスのカーソルに同期しメッセージを /////////////////////////////////////////////////////////// class Assignment_ extends

More information

< F2D89BA8EE882C E6A7464>

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

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

< F2D A838B838D96402E6A7464>

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

More information

< F2D8EA CE909482CC92EA82852E6A7464>

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

More information

< F2D82B682E182F182AF82F12E6A7464>

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

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

< F2D A839382CC906A2E6A7464>

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

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

HCI プログラミング 10 回目テキストフィールドとキーイベント 今日の講義で学ぶ内容 テキストフィールドの利用 キーイベントの処理 テキストフィールドの利用 1 テキストフィールドを配置してみましょう テキストフィールドを用いることにより 数値や文字列などのデータ入力が可能になります ソースファ

HCI プログラミング 10 回目テキストフィールドとキーイベント 今日の講義で学ぶ内容 テキストフィールドの利用 キーイベントの処理 テキストフィールドの利用 1 テキストフィールドを配置してみましょう テキストフィールドを用いることにより 数値や文字列などのデータ入力が可能になります ソースファ HCI プログラミング 10 回目テキストフィールドとキーイベント 今日の講義で学ぶ内容 テキストフィールドの利用 キーイベントの処理 テキストフィールドの利用 1 テキストフィールドを配置してみましょう テキストフィールドを用いることにより 数値や文字列などのデータ入力が可能になります ソースファイル名 :Sample10_1.java // HP よりインポート文をここへ貼り付けてください //

More information

Microsoft PowerPoint - prog08.ppt

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

More information

PowerPoint プレゼンテーション

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

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

Microsoft Word - Java3.DOC

Microsoft Word - Java3.DOC Java 入門 ( 5) 科名 T u t o r i a l g r o u p 氏 名 1 Abstract Window Toolkit(AWT) Abstract Window Toolkit(AWT) は Java の GUI(Graphical User Interface) 構築の最も基本となるライブラリパッケージである Abstract Window Toolkit(AWT) の特徴は

More information

< F2D92DE82E8914B82CC977088D32E6A7464>

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

More information

awt の主要なクラスを下記に示す クラス Component Container Button Label Panel Frame 説明画面にユーザインターフェイス要素として表示し, ユーザとのやり取りを行うコンポーネントを表すすべてのコンポーネントのスーパークラスになる ほかのコンポーネントを含

awt の主要なクラスを下記に示す クラス Component Container Button Label Panel Frame 説明画面にユーザインターフェイス要素として表示し, ユーザとのやり取りを行うコンポーネントを表すすべてのコンポーネントのスーパークラスになる ほかのコンポーネントを含 第 3 章 GUI による電卓の実装 GUI の基礎とイベント処理について理解し, 前章で作成した演算プログラムを組み込んで電卓を作成 ( 実装 ) する 3.1 インターフェイス 文字などのコマンドだけでやりとりするインターフェイスを CUI(Command User Interface) と呼び, マウスなどでウインドウを操作して行うインターフェイスを GUI(Graphical User Interface)

More information

Microsoft PowerPoint - prog08.ppt

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

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション オブジェクト指向 プログラミング演習 第 3 回継承 オーバーライド インタフェース 前回までのお話 モジュール化 大きなプログラムは部品に分けて設計する オブジェクト指向 モノ中心に考える プログラムでは クラス ( モノの種類 ) を定義する ある特定のモノは インスタンスで表す クラスは型 インスタンスは値 プログラムを書くときも部品ごとに書く モノの部品であるモノはフィールドに書く 手順の部品である手順はメソッドに書く

More information

r4.dvi

r4.dvi 00 4 2000.6.24 0 GUI GUI GUI GUI 1 1.1 3 2 1 import java.applet.applet; import java.awt.*; public class r3ex2 extends Applet { Figure[] figs = new Figure[]{ new Circle(Color.blue, 100.0, 100.0, 30.0, 1.1,

More information

PowerPoint プレゼンテーション

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

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

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

PowerPoint プレゼンテーション

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

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

More information

Java 2 - Lesson01

Java 2 - Lesson01 第 2 回 GUI コンポーネントのイベント処理 GUI Component Event Handling キーポイント イベント イベントリスナー イベント処理とは何か? ActionEventとActionListenerについて ItemEventとItemListenerについて TextEventとTextListenerについて KeyEventとKeyListenerについて AdjustmentEventとadjustmentListenerについて

More information

GUIプログラムⅡ

GUIプログラムⅡ GUI プログラム Ⅱ 前回課題の制作例 ファイル名 :awtsave.java import java.awt.*; import java.awt.event.*; public class awtsave extends Frame // Button クラスの宣言 Button btnsave; Label lblcaption1, lblcaption2, lblcaption3; Label

More information

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

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

More information

Javaプログラムの実行手順

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

More information

KeyListener init addkeylistener addactionlistener addkeylistener addkeylistener( this ); this.addkeylistener( this ); KeyListener public void keytyped

KeyListener init addkeylistener addactionlistener addkeylistener addkeylistener( this ); this.addkeylistener( this ); KeyListener public void keytyped KeyListener keypressed(keyevent e) keyreleased(keyevent e) keytyped(keyevent e) MouseListener mouseclicked(mouseevent e) mousepressed(mouseevent e) mousereleased(mouseevent e) mouseentered(mouseevent e)

More information

教材ドットコムオリジナル教材 0から始めるiアプリ (4) 0 から始める i アプリ (4) i アプリをプログラミングする際に必要なのは Java というプログラミング言語の基礎知識です 独自の命令や駆使してプログラミングをするわけですが Java というベースになっている言語を知らないでプログ

教材ドットコムオリジナル教材 0から始めるiアプリ (4) 0 から始める i アプリ (4) i アプリをプログラミングする際に必要なのは Java というプログラミング言語の基礎知識です 独自の命令や駆使してプログラミングをするわけですが Java というベースになっている言語を知らないでプログ 教材ドットコムオリジナル教材 0から始めるiアプリ (4) 0 から始める i アプリ (4) i アプリをプログラミングする際に必要なのは Java というプログラミング言語の基礎知識です 独自の命令や駆使してプログラミングをするわけですが Java というベースになっている言語を知らないでプログラムを記述することはあり得ません 本節では 新規プロジェクトを続けて作る際の注意事項と 簡単な Java

More information

IE6 2 BMI chapter1 Java 6 chapter2 Java 7 chapter3 for if 8 chapter4 : BMI 9 chapter5 Java GUI 10 chapter6 11 chapter7 BMI 12 chap

IE6 2 BMI chapter1 Java 6 chapter2 Java 7 chapter3 for if 8 chapter4 : BMI 9 chapter5 Java GUI 10 chapter6 11 chapter7 BMI 12 chap 1-1 1-2 IE6 2 BMI 3-1 3-2 4 5 chapter1 Java 6 chapter2 Java 7 chapter3 for if 8 chapter4 : BMI 9 chapter5 Java GUI 10 chapter6 11 chapter7 BMI 12 chapter8 : 13-1 13-2 14 15 PersonTest.java KazuateGame.java

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

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

GUIプログラムⅤ

GUIプログラムⅤ GUI プログラム Ⅴ 前回課題の制作例 ファイル名 :awttest.java public class awttest public static void main(string arg[]) //=============================================== // ウィンドウ (Frame クラス ) のインスタンスを生成 //===============================================

More information

Prog2_11th

Prog2_11th 2012 年 12 月 6 日 ( 木 ) 実施 GUIプログラミング今回及び次回の授業では,Java 言語での GUI プログラミングの基礎について学習する GUIツールキット Java 言語では,GUI プログラミング用のツールキットとして, 次のものが用意されている 1) AWT (Abstract Window Toolkit) 2) Swing AWT は Java 言語の当初から実装されていた標準の

More information

I 4 p.2 4 GUI java.awt.event.* import /* 1 */ import mouseclicked MouseListener implement /* 2 */ init addmouselistener(this) this /* 3 */ this mousec

I 4 p.2 4 GUI java.awt.event.* import /* 1 */ import mouseclicked MouseListener implement /* 2 */ init addmouselistener(this) this /* 3 */ this mousec I 4 p.1 4 GUI GUI GUI 4.1 4.1.1 MouseTest.java /* 1 */ public class MouseTest extends JApplet implements MouseListener /* 2 */ { int x=50, y=20; addmouselistener(this); /* 3 */ public void mouseclicked(mouseevent

More information

Prog2_9th

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

More information

Construction of a Scheme & a Java Application for Confirmation of Graduate Requirements HARIMOTO, Hiroshi The aim of the paper is to construct a scheme and a Java application for the senior students of

More information

次の演習課題(1),(2)のプログラムを完成させよ

次の演習課題(1),(2)のプログラムを完成させよ 次の演習課題 (1),(2) のプログラムを作成せよ. 課題 (1) ボタン押下時の処理を追加し以下の実行結果となるようにプログラムを作成しなさい ( ボタン押下時の処理 ) import java.lang.*; class Figure extends JFrame implements ActionListener{ JPanel panel; JScrollPane scroll; JTextArea

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

ÿþ˜u#u·0¹0Æ0à0

ÿþ˜u#u·0¹0Æ0à0 応用プログラミング - イベント処理 - イベント : プログラムへの働きかけ (GUI のボタンをクリックする, キーボードよりデータを入力するなど ) イベント処理 ( イベントハンドリング ): イベントに対する応答及びそのプログラム処理 イベントを処理するプログラムは イベントが発生した場合にのみ 呼び出される ( イベントドリブン ) GUI イベント イベント処理のプログラム イベント処理の仕組みと流れ

More information

ガイダンス

ガイダンス プログラムの 1 行目に以下を入れること // vm12345 杉崎えり子 情報科学 B 第 14 回課題作成 3 情報科学 B Info2/3 info14 今日のフォルダー作成 情報科学 B 第 14 回課題作成 3 Report14_1.java 1 教科書 資料 過去のプログラムを見ながらで OK 課題 3( 提出 ) ボタンとアニメーション ( 第 13 回 ) を組み合わせて オリ ジナルのウィンドウを作成する

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

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

2

2 次の課題 1~7 の を埋めてプログラムを完成させよ 1. 整数型の配列に格納されたデータの総和を計算し, その結果を出力するプログラムである このプログラムの処理手順を次に示す 1 配列の格納するデータの個数 n (n>0) を入力する 2n の大きさで配列を確保する 3 配列に n 個分のデータを格納する 4 配列の総和を求める 5 総和を出力する import java.io.*; public

More information

Prog1_12th

Prog1_12th 2014 年 7 月 3 日 ( 木 ) 実施 GUIプログラミング今回の授業では,Java 言語での GUI(Graphical User Interface) プログラミングの基礎について学習する GUIツールキット Java 言語では,GUI プログラミング用のツールキットとして, 次のものが用意されている 1) AWT(Abstract Window Toolkit) 2) Swing AWT

More information

Object MenuComponent MenuBar MenuItem Menu CheckboxMenuItem

Object MenuComponent MenuBar MenuItem Menu CheckboxMenuItem Java Object MenuComponent MenuBar MenuItem Menu CheckboxMenuItem 2 MenuComponent MenuComponent setfont() void setfont(font f) MenuBar MenuBar MenuBar() MenuBar add() Menu add(menu m) Menu Menu Menu String

More information

GUI プログラミング第 4 Graph ~ 手書認識と関数グラフ描画 ~ マウスで数式を書いて認識し 関数グラフを描画する < 手書認識とグラフ描画のステップ> ステップ 1_1 フレームの作成 ステップ 1_2 マウスで自由に線を書く ステップ 2-1 手書認識認識結果を標準出力する ステップ

GUI プログラミング第 4 Graph ~ 手書認識と関数グラフ描画 ~ マウスで数式を書いて認識し 関数グラフを描画する < 手書認識とグラフ描画のステップ> ステップ 1_1 フレームの作成 ステップ 1_2 マウスで自由に線を書く ステップ 2-1 手書認識認識結果を標準出力する ステップ GUI プログラミング第 4 Graph ~ 手書認識と関数グラフ描画 ~ マウスで数式を書いて認識し 関数グラフを描画する < 手書認識とグラフ描画のステップ> ステップ 1_1 フレームの作成 ステップ 1_2 マウスで自由に線を書く ステップ 2-1 手書認識認識結果を標準出力する ステップ 2-2 手書認識認識結果 ( 数式 ) を描画する ステップ 3 認識した数式を元に関数グラフを描画する

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

ガイダンス

ガイダンス プログラムの 1 行目に自分の名前を入れること // vm12345 杉崎えり子 情報科学 B 第 14 回課題作成 3 情報科学 B Info2/3 info14 今日のフォルダー作成 情報科学 B 第 14 回課題作成 3 Report14_1.java 1 教科書 資料 過去のプログラムを見ながらで OK 課題 3( 提出 ) ボタンとアニメーション ( 第 13 回 ) を組み合わせて オリ

More information

Prog2_12th

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

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

< F2D BCA82CC978E89BA82CC8EC08CB12E6A7464>

< F2D BCA82CC978E89BA82CC8EC08CB12E6A7464> パチンコ玉の落下の実験 [Java アプレット ] [Java アプリケーション ] 1. はじめに 1 個のパチンコ玉が釘に当たって左右に分かれながら落下するとき パチンコ玉はどこに落下するのでしょうか ただし パチンコ玉が釘に当たって左右に分かれるとき その分かれ方は左右半々であるとします パチンコ玉が落下し易い場所はあるのでしょうか それとも どこの場所も同じなのでしょうか シミュレーションソフト

More information

B02-095 2007 2 15 1 3 2 4 2.1............................. 4 2.2........................................ 5 2.3........................................ 6 3 7 3.1................................. 7 3.2..............................

More information

アジェンダ 1 グラフィカルなインタフェース GUI(Graphical User Interface) の基礎 2 Swing を利用する Swing の基礎知識 2

アジェンダ 1 グラフィカルなインタフェース GUI(Graphical User Interface) の基礎 2 Swing を利用する Swing の基礎知識 2 UML によるソフトウェア設計 Java プログラミング 2 1 アジェンダ 1 グラフィカルなインタフェース GUI(Graphical User Interface) の基礎 2 Swing を利用する Swing の基礎知識 2 1. グラフィカルなインタフェース ウィンドウの作成手順 1. ウィンドウ ( フレーム ) を作成する JFrame frame = new JFrame(); 2.

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

ToDo: 今回のタイトル

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

More information

ソフトウェア開発方法論2

ソフトウェア開発方法論2 ソフトウェア開発方法論 2 情報システム工学特別講義 ( 渕田 ) 開発依頼 研究法人 AA 研究所では 構造立体研究の一部として 以下のような図形管理を行うシステムを発注する 名称 : 図形管理システム 機能 : 以下の機能を持つ 1. 画面の何もないところをクリックすることで 図形を画面上に配置することができる 配置できる図形は円 三角 四角の3つを選択でき 大きさは決まっている 2. 図形の色は

More information

Prog1_12th

Prog1_12th 2018 年 7 月 5 日 ( 木 ) 実施 GUIプログラミング今回の授業では,Java 言語での GUI(Graphical User Interface) プログラミングの基礎について学習する GUIツールキット Java 言語では,GUI プログラミング用のツールキットとして, 次のものが用意されている 1) AWT(Abstract Window Toolkit) 2) Swing AWT

More information

Prog2_15th

Prog2_15th 2019 年 7 月 25 日 ( 木 ) 実施メニューメニューバーとコンテクストメニュー Visual C# では, メニューはコントロールの一つとして扱われ, フォームアプリケーションの上部に配置されるメニューバーと, コントロール上でマウスを右クリックすると表示されるコンテクストメニューとに対応している これ等は選択するとメニューアイテムのリストが表示されるプルダウンメニューと呼ばれる形式に従う

More information

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

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

More information

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

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

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション L2: Fundamentals of AI Programming in Java Javaアプレット ArrayList HashMap AI 応用の例 探索問題 Java アプレット VS アプリケーション ava アプレットとは html に貼り付けられる java で作成した小規模のプログラムのことで サーバー側からクライアントマシンに送られ ブラウザ上に読み込まれて実行される ブラウザと

More information

Microsoft PowerPoint - prog08.ppt

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

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

I. (i) Foo public (A). javac Foo.java java Foo.class (C). javac Foo java Foo (ii)? (B). javac Foo.java java Foo (D). javac Foo java Foo.class (A). Jav

I. (i) Foo public (A). javac Foo.java java Foo.class (C). javac Foo java Foo (ii)? (B). javac Foo.java java Foo (D). javac Foo java Foo.class (A). Jav 2018 06 08 11:00 12:00 I. I III II. III. IV. ( a d) V. VI. 80 40 40 100 60 : A ActionListener aa addactionlistener AE ActionEvent K KeyListener ak addkeylistener KE KeyEvent M MouseListener am addmouselistener

More information