GridLayout オブジェクト(省略)

Slides:



Advertisements
Similar presentations
オブジェクト指向 言語 論 第八回 知能情報学部 新田直也. 多相性(最も単純な例) class A { void m() { System.out.println( “ this is class A ” ); } } class A1 extends A { void m() { System.out.println(
Advertisements

Ver 準備 Java フォルダに移動して …… mkdir Swing Swing フォルダに移動して …… cp ~gundam/Java/Swing. コマンドプロンプト ( JDK ) でないと起動 しないので注意!!!
社会人学習講座 「Javaプログラミング概論」
         第9回 Swing.
プログラミング 平成22年10月20日 森田 彦.
プログラミング 平成24年10月16日 森田 彦.
Imageの描画 画像を読み込んで表示すること。 import java.awt.*;が必要。
JSFによるWebアプリケーション開発 第9回
Applet 岡部 祐典 鈴木 敬幸.
GUIコンポーネントの設定と配置 Creation and positioning of GUI components
JAVA GUIプログラミング 第6回 TextFieldとLabel.
C#によるWindowsFormApplication入門
復習ーII (General Review II)
オブジェクト指向言語 第12回 アプレット.
アプレット (Applet)について.
1.Java 概要 2.簡単なアプレット 3.動画を表示するアプレット 4.アプレットの改良 5.開発環境の利用(データベース)
Iアプリプログラミング その1  鳥居秀徳.
プログラミング 平成23年10月19日 森田 彦.
Javaのインタフェース についての補足 2006年5月17日 海谷 治彦.
JAVA.
第2回:Javaの変数と型の宣言 プログラミングII 2007年10月2日.
 Applet アプレット ◇長い長いアプレット講座◇.
第14回 GUIの構成とイベント・ドリブン ~GUIを使ったプログラム(Ⅰ)~.
JAVA GUIプログラミング 第5回 ボタンとそのイベント処理.
第20章 Flyweight ~同じものを共有して無駄をなくす~
インタフェース プログラミング 第14回 インタフェース プログラミング第14回.
オブジェクト指向入門.
第14回独習Javaゼミ セクション1~3 発表者 直江 宗紀.
アプレット プログラミング 第10回 アプレット プログラミング第10回.
第11回 GUI(グラフィカル・ユーザ・インターフェース)の設計
プログラミング 平成24年10月30日 森田 彦.
プログラミング演習3 第2回 GUIの復習.
プログラミング 平成25年11月5日 森田 彦.
JAVA入門後期⑨ JAVAのSwingのメニュー処理
JAVA GUIプログラミング 第2回 グラフィックスを使っての演習 グラフを描こう.
グラフィックス、その1 色の表示 フォントを変えて文字を表示 直線、四角形、楕円形の描画 円弧の描画 多角形の描画
アルゴリズムとデータ構造演習(6月24日) グラフィックス、その2 テキストフィールドで入力する チェックボックスで1つ以上指定する
Java入門 13.5カラーの使用 13.6テキストの表示                  2003/12/12                   紺野憲一.
JAVA入門後期⑦ JAVAのSwingの基本構造
独習JAVA 6.8 コンストラクタの修飾子 6.9 メソッドの修飾子 6.10 ObjectクラスとClassクラス 11月28日(金)
第15回独習Javaゼミ セクション14~15 発表者 直江宗紀.
プログラミング演習3 第3回 ミニプロジェクト.
暗黙的に型付けされる構造体の Java言語への導入
プログラミング演習3 第2回 GUIの復習.
プログラミング基礎a 第10回 Javaによる図形処理入門(2) GUIの使い方
JAVA入門後期③ JAVAのGUI (JavaのGUI基本構造、いろいろなアプレット)
JAVA入門後期⑥ JAVAのAWTの基本構造 (レイアウトマネージャー、 ウインドウ型アプリケーション)
オブジェクト指向言語論 第十一回 知能情報学部 新田直也.
プログラミング基礎a 第10回 Javaによる図形処理入門(2) GUIの使い方
プログラミング基礎a 第12回 Java言語による図形処理入門(3) アニメーション入門
プログラミング基礎a 第11回 Java言語による図形処理入門(3) アニメーション入門
オブジェクト指向言語論 第十一回 知能情報学部 新田直也.
計算機プログラミングI 第5回 配列 文字列(Stringクラス) mainの引数 配列の利用例
プログラミングⅠ 平成30年10月22日 森田 彦.
JAVA入門後期④ イベント、AWT、の基本構造、スレッド
プログラミング言語論 第十三回 理工学部 情報システム工学科 新田直也.
JAVA GUIプログラミング 第3回 イベント処理① マウスイベント.
オブジェクト指向言語論 第十二回 知能情報学部 新田直也.
C#プログラミング実習 第3回.
計算機プログラミングI 第3回 プリミティブ値 クラスメソッド クラス変数 式と演算 変数の利用
画面への描画 Graphics オブジェクト 紙 ペン Pen オブジェクト Brush オブジェクト 画面のピクセルをカプセル化
Chapter 5 5.5 thisキーワード 5.6 インスタンス変数とインスタンスメソッド 結城 隆
JAVA入門⑥ クラスとインスタンス.
GUI部品とイベント処理の例 マインスィーパもどきの作成 倉敷芸術科学大学 産業科学技術学部 梶浦文夫.
プログラミング実習(Java) グラフィクス処理とGUIプログラミング 講師:坂口 利裕(横浜市立大学)
プログラミング 平成28年10月25日 森田 彦.
3.テキストボックスによる データ入力 データ入力と表示のプログラム.
5.基本API 5-1 レイアウト ウィジェットの並べ方を指定するには、 パレットのレイアウト(Layoutでは以下の8種類)を配置する。
計算機プログラミングI 第2回 2002年10月17日(木) 履習登録 複習 ライブラリの利用 (2.6-7) 式・値・代入 (2.6-8)
計算機プログラミングI 第5回 2002年11月7日(木) 配列: 沢山のデータをまとめたデータ どんなものか どうやって使うのか
Presentation transcript:

GridLayout オブジェクト(省略) Applet Event 後半 Name : 青木良樹 ID : onionsong 内容: Button オブジェクト Checkbox オブジェクト Choice オブジェクト TextField オブジェクト GridLayout オブジェクト(省略) 01 AppletEvent後半

4 Button オブジェクト Button2.java の説明 1 public class Button2 extends Applet implements ActionListener{ // ボタンをクリックした時の、アクションイベントを行うために    ActionListener を実装。 Init メソッド Button b = new Button(“Hello”); // Button b を宣言して、Button b をラベル Hello で作成。 // Button(String label) add(b); // ボタン b を配置。 b.addActionListener(this); // イベント付きのボタンにするためにActionListenerへ登録。 6 11 12 13 02 Button.javaの説明1

4 Button オブジェクト Button2.java の説明 2 actionPerformed メソッド public void actionPerformed(ActionEvent e) アクションイベントが発生するとここのメソッドに飛ぶ。 この場合はボタンがクリックされたときにここに飛ぶ。 18 03 Button2.javaの説明2

4 Button オブジェクト Button2.java の流れ 1 Button b; で b をプログラム内に作成 2 new Button(“Hello”); で b をボタン化し、 Hello というラベルを貼り付ける 3 add(b); で b を配置 4 b.addActionListener(this); b をイベント付きのボタンにするためにActionListenerに登録 b 1 Hello 2 Hello Show 3 7 ~~~~ ~~~~~ ボタンbが押されたらactionPerformedへ飛ぶ ActionListener 4 5 click 絵を描く actionPerformed メソッド 6 04 Button2.javaの流れ

4 Button オブジェクト Button()コンストラクタの概要 Button(String label) 指定されたラベルを持つボタンを構築します。 05 Button()コンストラクタの概要

4 Button オブジェクト 演習 Button3.java ヒント: 0-9 までの乱数を作るには , (int)Math.round(Math.random() *10.0) を実行する. 毎回書換えるには,repaint()を呼ぶ. 向きを覚えておくインスタンス変数を使う. 06 演習Button3.java

4 Button オブジェクト 演習 Button3.java 解答例 import java.applet.*; import java.awt.*; import java.awt.event.*; public class Button3 extends Applet implements ActionListener { Graphics g; int angle = 30; // 角度を代入しておく変数を宣言:初期値30 public void init(){ Button b = new Button(“Hello”); // ボタンの宣言と作成 add(b); // ボタンの配置 b.addActionListener(this); // リスナーに登録 g = getGraphics(); } public void actionPerformed(ActionEvent e){ angle = (int)Math.round(Math.random()*360); // 乱数0~359を作成 repaint(); public void paint(Graphics g){ g.fillArc(100, 100, 100, 100, angle, 300); 07 演習Button3.java

5 Checkbox オブジェクト Checkbox2.java の説明 1 public class Checkbox2 extends Applet implements ItemListener{ // チェックボックスをクリックした時の、  アイテムイベントを行うためにItemListener を実装。 Init メソッド Checkbox c1 = new Checkbox(“Turn”); // Checkbox c1 を宣言して、c1 をラベル Turn で作成。 // Checkbox(String label) add(c1) // Checkbox c1 の配置。 c1.addItemListener(this); // イベント付きのCheckboxにするため、ItemListenerへ登録。 6 12 13 14 08 Checkbox2.javaの説明1

5 Checkbox オブジェクト Checkbox2.java の説明 2 itemStateChanged メソッド public void itemStateChanged(ItemEvent e) // アイテムイベントが発生するとここのメソッドに飛ぶ。 // この場合はチェックボックスがクリックされたときにここに飛ぶ。 // チェックボックス版のactionPerformedメソッドのようなもの。 Checkbox c = (Checkbox)e.getItemSelectable(); // getItemSelectable() でc にイベントの発生元を代入。 String s = c.getLabel(); // getLabel() で s に c のラベルを代入。 25 26 27 09 Checkbox2.javaの説明2

5 Checkbox オブジェクト Checkbox2.java の説明 3 if(c.getState()) color = Color.red; // getState()でチェックボックスの状態を取得。チェックが入っ ていたら 赤。 else color = Color.green; // そうでなかったら 緑。 29 32 10 Checkbox2.javaの説明3

11 Checkbox()コンストラクタの概要 5 Checkbox オブジェクト Checkbox()コンストラクタの概要 Checkbox() ラベルなしのチェックボックスを作成します。 Checkbox(String label) 指定されたラベルが付いたチェックボックスを作成します。 Checkbox(String label, boolean state) 指定されたラベルが付いたチェックボックスを作成し、指定された 状態に設定します。 Checkbox(String label, boolean state, CheckboxGroup group) 指定されたラベルが付いたチェックボックスを、指定された チェックボックスグループに構築し、指定された状態に設定します。 11 Checkbox()コンストラクタの概要

5 Checkbox オブジェクト 演習 Checkbox3.java  Checkbox2.java を改良し,“Open“ ボタンを付けた Checkbox3.javaを書け.ここでパックマンは、指定されている時だけ口を開ける. 簡単な解答: ラベルが「Open」のCheckboxを作成する。 変数 t2 を作成し、g.fillArc(100, 100, 100, 100, t, t2);と変更す る。 if(s.equals("Open")){ if(c.getState()) t2 = 300; else t2 = 360; } を追加。 12 演習Checkbox3.java

6 Choice オブジェクト Choice1.java の説明 1 public class Choice1 extends Applet implements ItemListener{ // チェックボックスと同様クリックした時の、  アイテムイベントを行うためにItemListener を実装。 Init メソッド Choice c = new Choice(); // Choice オブジェクト c を宣言、作成。 c.addItem("Red"); // c に「Red」という項目を追加。 c.addItemListener(this); // c をイベント付きのChoiceにするため、ItemListenerへ登録。 add(c); // c の配置 6 10 11 14 15 13 Choice1.javaの説明1

6 Choice オブジェクト 演習 Choice2.java  Choice1.java を改良し,North, South, West, East の選択に より位置を移動するパックマン Choice2.java を書け. 簡単な解答: 新しいChoiceオブジェクトを作成し, North, South, West, East の項目を追加。 位置を決定する変数 x と y を作成し, g.fillArc(x, y, 100, 100, 30, 300); に変更。 if(s.equals("North")) {y = 50; x = 100;} else if(s.equals("South")) {y = 150; x = 100;} のように,itemStateChangedメソッドに条件式を追加。 14 演習Choice2.java

7 TextField オブジェクト TextField1.java の説明 public class TextField1 extends Applet implements TextListener{ // テキストボックスで,イベントを行うために     TextListener を実装。 TextField m; // TextField m の宣言。 Init メソッド m = new TextField("hello", 20); // TextField m を初期値 hello サイズ 20 で作成。 m.addTextListener(this); // イベントを受け取らせるためにリスナーに追加。 add(m); // TextField を配置。 5 7 11 12 13 15 TextField1.javaの説明

textValueChangedメソッド 7 TextField オブジェクト TextField1.java の流れ 1 TextField m; で m をプログラム内に作成. 2 new TextField(“hello”, 20); で m をテキストフィールド化し,   初期値を hello に,横のサイズを 20 に設定. 3 m.addTextListener(this); でイベントを受け取らせるためにリスナーに追加. 4 add(m); で m を配置. m 1 2 hello Size 20 Show 4 hello ~~~~ ~~~~~ mの値が変更されたらtextValueChangedに飛ぶ。 TextListener 3 5 入力 hello 8 7 変数 s に入力されている文字列を 描画 paintメソッド 変数 s へ,テキストフィールドに 入力されている文字列を代入 textValueChangedメソッド 6 16 TextField1.javaの流れ

17 TextField()コンストラクタの概要 7 TextField オブジェクト TextField()コンストラクタの概要 TextField() 新しいテキストフィールドを構築します。 TextField(int columns) 指定された列数で新しい空のテキストフィールドを構築します。 TextField(String text) 指定されたテキストで初期化された新しいテキストフィールドを構築します。 TextField(String text, int columns) 指定されたテキストが表示されるように初期化され、指定された 列数を表示できる幅の新しいテキストフィールドを構築します。 17 TextField()コンストラクタの概要

7 TextField オブジェクト 演習 TextField2.java   TextField1.java を書換えて,大きさが指定できるパックマン TextField2.java を書け. ヒント :  入力された文字列は整数型ではないので,変換が必要。 18 演習TextField2.java

7 TextField オブジェクト 演習 TextField2.java 解答例 import java.applet.*; import java.awt.*; import java.awt.event.*; public class TextField2 extends Applet implements TextListener{ TextField m; int size = 50; public void init(){ m = new TextField("サイズを入力", 20); m.addTextListener(this); add(m); } public void paint(Graphics g){ g.setColor(Color.blue); g.fillArc(100, 100, size, size, 30, 300); public void textValueChanged(TextEvent e){ size = Integer.parseInt(m.getText()); repaint(); 19 演習TextField2.java解答例

宿題 宿題1 TextField3.java: テキスト9.7より.  宿題 宿題1 TextField3.java:  テキスト9.7より.  TextField2.java を参考に,大きさの指定を別のボタンで 行うTextField3.javaを書け. 20 宿題1 TextField3.java

宿題 宿題2 Key3.java: MouseEventを使って マウスを押した回数が 押したところに表示される  宿題 宿題2 Key3.java:  MouseEventを使って マウスを押した回数が 押したところに表示される プログラムを書いてください。 お願いしますm(__)m 21 宿題2 Count.java

宿題 宿題3 ChangeColor.java:  宿題 宿題3 ChangeColor.java:  一番上のテキストフィールドに文字を入力すると,TextField1.java と同様に下にリアルタイムにテキストを表示する.  次の三つのテキストフィールドは,左からそれぞれ色の,Red , Green , Blue , 値を示す.  一番下のボタンをクリックするとRGBの値を読み込み文字とパックマンの色を変更する.  というプログラム ChangeColor.java を作ってください. 22 宿題3 ChangeColor.java