ガイダンス

Similar documents
ガイダンス

ガイダンス

ガイダンス

ガイダンス

Java言語 第1回

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

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

<4D F736F F F696E74202D AC C8899E D834F E >

Java言語 第1回

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

Microsoft PowerPoint - OOP.pptx

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

text_12.dvi

Microsoft PowerPoint - prog12.ppt

PowerPoint Presentation

public class Kadai _02 { public static void main(string[] args) { MyFrame frame = new MyFrame("Kadai _02"); (2) フレームのクラス名は MyFrame とし 以下

Java 2 - Lesson01

Microsoft PowerPoint - prog13.ppt

< F2D B838A835882CC8CF68EAE2E6A7464>

Java言語 第1回

Prog1_12th

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

< F2D834F838C A815B A CC>

Microsoft PowerPoint - prog13.ppt

PowerPoint Presentation

< F2D B825082CC96E291E82E6A7464>

< F2D825282CC947B909482CC A815B83682E6A>

< F2D F B834E2E6A7464>

ガイダンス

< F2D82518E9F8AD CC834F CC8CFC82AB82C68D4C>

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

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

< F2D82518CC282CC D2E6A7464>

< F2D E E6A7464>

Prog1_12th

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

public class MyFrame { private JPanel panel1; private JPanel panel2; private JPanel panel3; private JPanel panel4; private JLabel label1; private JTex

Prog2_11th

< F2D89BA8EE882C E6A7464>

Microsoft PowerPoint Java基本技術PrintOut.ppt [互換モード]

text_13.dvi

< F2D82B682E182F182AF82F12E6A7464>

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

< F2D82518E9F8AD CC95BD8D7388DA93AE2E6A7464>

Microsoft PowerPoint - prog03.ppt

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション

< F2D A839382CC906A2E6A7464>

GUIプログラムⅣ

Java言語 第1回

< F2D92DE82E8914B82CC977088D32E6A7464>

< F2D A838B838D96402E6A7464>

GUIプログラムⅤ

Microsoft Word - Java4.DOC

Microsoft PowerPoint ppt

< F2D8EA CE909482CC92EA82852E6A7464>

自宅でJava言語の開発環境を作る方法

PowerPoint プレゼンテーション

目 次 Java GUI 3 1 概要 クラス構成 ソースコード例 課題...7 i

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

Javaプログラムの実行手順

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

Microsoft PowerPoint - swing3.ppt

2 static final int DO NOTHING ON CLOSE static final int HIDE ON CLOSE static final int DISPOSE ON CLOSE static final int EXIT ON CLOSE void setvisible

......() JButton

Java講座

B 10 : N ip2003f10.tex B : 9/12/ :02 p.1/71

2

Thread


PowerPoint プレゼンテーション

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

Microsoft PowerPoint - prog11.ppt

6 p.1 6 Java GUI GUI paintcomponent GUI mouseclicked, keypressed, actionperformed mouseclicked paintcomponent thread, 1 GUI 6.0.2, mutlithread C

Prog2_12th

Microsoft PowerPoint - swing2.ppt

Microsoft PowerPoint - prog11.ppt

Method(C 言語では関数と呼ぶ ) メソッドを使うと 処理を纏めて管理することができる 処理 ( メソッド ) の再実行 ( 再利用 ) が簡単にできる y 元々はC 言語の関数であり 入力値に対する値を 定義するもの 数学では F(x) = 2x + 1 など F(x)=2x+1 入力値 (

Java 2 - Lesson01

Microsoft PowerPoint - OOP.pptx

問1

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

Microsoft PowerPoint - prog04.ppt

Java 2 - Lesson01

GUIプログラムⅡ

Microsoft Word - Java3.DOC

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

Javaセキュアコーディングセミナー2013東京第1回 演習の解説

5 p Point int Java p Point Point p; p = new Point(); Point instance, p Point int 2 Point Point p = new Point(); p.x = 1; p.y = 2;

GEC-Java

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

GEC-Java

C#の基本

JavaプログラミングⅠ

ソフトウェア基礎演習 課題

Javaの作成の前に

PowerPoint プレゼンテーション

Microsoft PowerPoint - prog09.ppt


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

Transcription:

プログラムの 1 行目に以下のように自分の入れること // vm12345 杉崎えり子 情報科学 B 第 10 回 GUI 情報科学 B Info2/3 info10 今日のフォルダー作成 Example10_1.java 1

今日やること Windows などで見られるウィンドウを作 成して (GUI プログラム ) そこに実行結 果を表示させる 2

ウィンドウの作成 Java を使用してウィンドウの作成をしたい 3

金型 ドーナツ型 ワッフル型 たい焼き型 4

金型 小倉あん味 たい焼き型 チョコレート味 金型は同じだけれど 出来上がるものは様々 クリーム味 5

ウィンドウの作成 バックグラウンドがグレーのウィンドウ ウィンドウ型 バックグラウンドがピンクのウィンドウ ウィンドウ金型から様々な色のウィンドウを作成する 6

ウィンドウの作成 ウィンドウ型 ウィンドウ金型はJava ではJFrameと言う型名 クラス 既に準備されているクラスの一つ 今回は1 個のウィンドウを作成し そのウィンドウの名前をmyframeとする オブジェクト ( インスタンス ) クラス ( 型 ) からオブジェクト ( もの ) を作る JFrame myframe = new JFrame(); 型 ( クラス名 ) 変数 = new クラス名 (); 7

他のパッケージ内のクラスや他のパッケージ内のクラスやインターフェイスを参照するために利用を参照するために利用 import パッケージ名. ( ドット ) クラス名 ; import javax.swing.*; public class Example10_1{ public static void main(string[] args){ /* フレームを作成 */ JFrame myframe = new JFrame(); Main /* サイズを指定 */ myframe myframe.setsize(400, 300); JFrame Example10_1.java ウィンドウの作成 main 実行結果 基本形のウィンドウ作成と表示 myframe /* 終了処理を設定 */ myframe.setdefaultcloseoperation(jframe.exit_on_close); Example11_2.java /* 実際に表示する */ myframe.setvisible(true); Main をシンプルにしたい メソッド化 8 コピーして実施

ウィンドウの作成継承 import javax.swing.*; フレームを作成するクラスJFrameはjavax.swingというパッケージの中にあるので import 文を使って呼び出しておく これを書くことにより javas.swing.jframe をJFrameと簡単に書くことが可能になる myframe.setsize(400, 300); myframeの幅 400px 高さ300pxを設定 myframe.setdefaultcloseoperation(jframe.exit_on_close); X ボタンを押すとアプリケーションを終了させる myframe.setvisible(true); myframeを表示させる 9

Example10_1.java import javax.swing.*; ウィンドウの作成 main 基本形のウィンドウ作成と表示 public class Example10_1{ public static void main(string[] args){ /* フレームを作成 */ JFrame myframe = new JFrame(); Main /* サイズを指定 */ myframe myframe.setsize(400, 300); 実行結果 JFrame /* 終了処理を設定 */ myframe.setdefaultcloseoperation(jframe.exit_on_close); /* 実際に表示する */ myframe.setvisible(true); この部分をメソッド化 Example11_2.java 10 コピーして実施

ウィンドウの作成継承 1 ウィンドウの作成 JFrame クラスを拡張して Window クラスを作成 メソッド化 public class Window extends JFrame{ // コンストラクタ public Window() { // メイン public static void main(string[] args){ パネル作成 メイン JFrame クラスを継承して Window クラスを作成 (Jframe クラスの機能を追加するため ) Window myframe = new Window(); Window クラスから myframe オブジェクトを作成したらコンストラクタ (Window) を実施する

Example10_2.java import javax.swing.*; ウィンドウの作成継承 public class Example10_2 extends JFrame{ //JFrameの拡張 public Example10_2(){ // コンストラクタ 基本形のウィンドウ作成と表示 main setsize(400, 300); setdefaultcloseoperation(exit_on_close); setvisible(true); // 実際に表示する public static void main(string[] args){ Example10_2 myframe = new Example10_2(); Ex10_2 JFrame // 拡張されたフレームを作成 実行結果 Ex10_2 クラスから myframe オブジェクトを作成したらコンストラクタ (Ex10_2) を実施する Example11_2.java 12

ウィンドウの作成継承 import javax.swing.*; フレームを作成するクラスJFrameはjavax.swingというパッケージの中にあるので import 文を使って呼び出しておく これを書くことにより javas.swing.jframe をJFrameと簡単に書くことが可能になる public class Example10_1 extends JFrame{ Example10_1をJframeを継承して作ったことを宣言 public Example10_1(){ プログラムの初期状態を設定するためのメソッド メソッド名はクラス名と同じにすること ( コンストラクタ ) myframe.setsize(400, 300); myframeの幅 400px 高さ300pxを設定 13

ウィンドウの作成継承 myframe.setdefaultcloseoperation(jframe.exit_on_close); X ボタンを押すとアプリケーションを終了させる myframe.setvisible(true); myframe を表示させる Example10_1 myframe = new Example10_1(); Main の中で Example10_1 クラスのオブジェクトを生成し myframe に代入 14

ボタンの作成 文字列を表示するために JLabel クラス ( 型 ) を用いて label オブジェクトを作成 ボタンを作成するために JButton クラス ( 型 ) を用いてオブジェクトを作成 15 追記して実施

Example10_2.java に追記 ボタンの作成 import javax.swing.*; import java.awt.*; //BorderLayout() を使うために赤字が追加部分 public class Example10_2 extends JFrame{ JLabel label; //labelをjlabelで宣言 Example10_2クラス内でlabel 使用可 JButton button; //buttonをjbuttonで宣言 Example10_2クラス内でlabel 使用可 public Example10_2(){ setsize(400, 300); setdefaultcloseoperation(exit_on_close); テキストの水平方向配置位置 GUI 部品の配置位置 label = new JLabel("clicks",JLabel.CENTER); // ラベルを作る button = new JButton("Click Me!"); // ボタンを作る setlayout(new BorderLayout()); // レイアウトマネージャを指定 add(label, BorderLayout.CENTER); // ラベルを真ん中に配置 add(button, BorderLayout.SOUTH); // ボタンを下に配置 Ex10_2 setvisible(true); // 実際に表示する main label button public static void main(string[] args){ Example10_2 myframe = new Example10_2 (); JFrame JLabel JButton 16 追記して実施

ボタンの作成 import java.awt.*; BorderLayout を使用するために import label = new JLabel("clicks",JLabel.CENTER); Jlabel クラスを使ってラベルオブジェクトを生成 で囲まれる文字列を表示し Jlabel.CENTER で中央に表示 button = new JButton("Click Me!"); Jbutton クラスを使ってボタンオブジェクトを生成 で囲まれる文字列を中央に表示する setlayout(new BorderLayout()); BorderLayout はレイアウトマネージャで適当に配置してくれる add(label, BorderLayout.CENTER); ラベルを真ん中に配置 add(button, BorderLayout.SOUTH); ボタンを下に配置 実行結果 17

ボタンを押すイベント クリックされると数字がカウントアップする クリックする 18

2 ボタンの作成 ボタンにイベントの監視人をつける public class Button extends JFrame implements ActionListener { ボタンを押すイベント コンストラクタ public Button(){ addactionlistener(this); イベント public void actionperformed(actionevent e) { メイン public static void main(string[] args){ パネル作成 ボタンクリック時の処理 メイン ボタンクリック処理を行うために リスナーインタフェースを実装 ActionEvent オブジェクトを e という変数で使う クリックされたときの処理 アクションイベントが発生すると actionperformed が呼び出される Button myframe = new Button(); myframe オブジェクトを作成したらコンストラクタ (Button) を実施する

Example10_2.java に追記 ボタンを押すイベント import javax.swing.*; import java.awt.*; import java.awt.event.*; 赤字が追加部分 public class Example10_2 extends Jframe implements ActionListener { JLabel label; JButton button; int count = 0; public Example10_2(){ setsize(400, 300); setdefaultcloseoperation(exit_on_close); label = new JLabel("clicks",JLabel.CENTER); // ラベルを作る button = new JButton("Click Me!"); // ボタンを作る setlayout(new BorderLayout()); // レイアウトマネージャを指定 add(label, BorderLayout.CENTER); // ラベルを真ん中に add(button, BorderLayout.SOUTH); // ボタンを下に配置 setvisible(true); // 実際に表示する button.addactionlistener(this); 20 追記して実施

ボタンを押すイベント // イベントがあったらここに来る public void actionperformed(actionevent e) { // イベントがbuttonで起こっていたら if (e.getsource() == button) { count++; //countを増加 // ラベルの文字を換える (1 行のテキストを定義 ) label.settext(count + " clicks"); public static void main(string[] args){ Example10_2 myframe = new Example10_2 (); 21

ボタンを押すイベント public class Example11_2 extends Jframe implements ActionListener import { イベント処理の ActionListener の道具を使えるようにする button.addactionlistener(this); ボタンにイベントの監視人をつける public void actionperformed(actionevent e) { クリックを感知したら actionperformed メソッドを実行 どんなイベントが起こったかは e というオブジェクトで知らせる if (e.getsource() == button) { イベントの発生がどこで起こったか調べ button かどうか label.settext(count + " clicks"); かっこ内の数字と文字列を表示 実行結果 22

課題ボタンを押すイベント 1 クリックした回数表示 (Example10_2.java) に加え あと何回クリック可能か ( 残数 ) を表示するようにし なさい クリックする前の残数は 100 とする BorderLayout.NORTH Kadai10_1.java BorderLayout.SOUTH 今日は課題の提出はない 23

課題ボタンを押すイベント 2 カウントアップするボタン カウントダウンするボタン 0にクリアするボタンを作成し作動するプログラ ムを作りなさい BorderLayout.NORTH Kadai10_2.java BorderLayout.SOUTH BorderLayout.EAST 24

課題ボタンを押すイベント 3 下図のように 今日の占い を作成しなさい 結 果は 1~4 の乱数を発生させ 対応したものを 表示させる 1 のとき大吉 2 のとき中吉 3 のとき吉 4 のとき凶 Kadai10_3.java 乱数発生方法は次ページ参照 25

ヒント 乱数の発生方法 乱数の発生のさせ方 ( 変数 fortuneに1~4の乱数を代入する ) int fortune=new java.util.random().nextint(4); //0 以上 ~4 未満の乱数発 fortune++; // 変数 fortuneに1~4の乱数が格納される 表示方法 Switch 文を使って fortune の中身の 1~4 の値で判別させる 26