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

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

最初に

1 Java Java GUI , 2 2 jlabel1 jlabel2 jlabel3 jtextfield1 jtextfield2 jtextfield3 jbutton1 jtextfield1 jtextfield2 jtextfield3

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

ガイダンス

ガイダンス

Microsoft PowerPoint - swing3.ppt

Java 2 - Lesson01

Java - Visual Editor

:30 12:00 I. I V II. III. IV. ( a d) V. VI : A ActionListener aa addactionlistener AE ActionEvent K KeyListener ak addkeyliste

Java言語 第1回

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

GUIプログラムⅣ

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

PowerPoint Presentation

ガイダンス

ガイダンス

ガイダンス

I. java.awt.rectangle java.lang.math random Java TM API java.awt Rectangle Rectangle (x,y)... public int x Rectangle X public int y Rectangle Y public

Thread

PowerPoint プレゼンテーション

. IDE JIVE[1][] Eclipse Java ( 1) Java Platform Debugger Architecture [5] 3. Eclipse GUI JIVE 3.1 Eclipse ( ) 1 JIVE Java [3] IDE c 016 Information Pr

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

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

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

2

シミュレーションの簡単な例 GUI 無しのシミュレーションを作る GUI を作る パラメタを設定するデモンストレーションをする 2 オブジェクト指向プログラミング特論

GUIプログラムⅤ

55 7 Java C Java TCP/IP TCP/IP TCP TCP_RO.java import java.net.*; import java.io.*; public class TCP_RO { public static void main(string[] a

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

Java 2 - Lesson01

text_13.dvi

I HTML HashMap (i) (ii) :.java import java.net.*; import java.io.*; import java.util.hashmap; public class SimpleStopWatch { public static voi

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;

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

< F2D E E6A7464>

オブジェクト指向プログラミング・同演習 5月21日演習課題

Microsoft PowerPoint - swing2.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

Java (9) 1 Lesson Java System.out.println() 1 Java API 1 Java Java 1

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

< F2D834F838C A815B A CC>

text_12.dvi

< F2D B838A835882CC8CF68EAE2E6A7464>

Microsoft Word - 第七週Java講座.docx

......() JButton

Microsoft PowerPoint - prog13.ppt

ALG ppt

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

untitled

Animals サンプル Step3 張り付けた動物の上をクリックすると それぞれの鳴き声で鳴く その鳴く間 一定時間 ( ここでは 1 秒間 ) 画像が別のものに変わる <アニメーションの基礎 : タイマーについて> アニメーションは アプリケーションが指定する間 一定間隔でどんどん画像をおきかえ

/ ( ) 8/7/ :21 p.2/64

Exam : 1z1-809-JPN Title : Java SE 8 Programmer II Vendor : Oracle Version : DEMO Get Latest & Valid 1z1-809-JPN Exam's Question and Answers 1 from Ac

Programming-C-9.key

JavaプログラミングⅠ

< F2D B825082CC96E291E82E6A7464>

TestDesign for Web

Javaセキュアコーディングセミナー東京 第3回 入出力(File, Stream)と例外時の動作 演習解説

: : : TSTank 2

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

Object MenuComponent MenuBar MenuItem Menu CheckboxMenuItem

Microsoft Word - keisankigairon.ch doc

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

Microsoft PowerPoint - prog13.ppt

Microsoft PowerPoint ppt

I. (i) Java? (A). 2Apples (B). Vitamin-C (C). Peach21 (D). Pine_Apple (ii) Java? (A). Java (B). Java (C). Java (D). JavaScript Java JavaScript Java (i

Microsoft PowerPoint - prog12.ppt

Java 2 - Lesson01

問題1 以下に示すプログラムは、次の処理をするプログラムである

K227 Java 2

JAVA とテンプレート

(Eclipse\202\305\212w\202\324Java2\215\374.pdf)

Prog2_9th

<4D F736F F F696E74202D AC C8899E D834F E >

GUIプログラムⅡ

問題1 以下に示すプログラムは、次の処理をするプログラムである

Java (7) Lesson = (1) 1 m 3 /s m 2 5 m 2 4 m 2 1 m 3 m 1 m 0.5 m 3 /ms 0.3 m 3 /ms 0.6 m 3 /ms 1 1 3

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

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

r2.dvi

< F2D82B682E182F182AF82F12E6A7464>

Java プログラミング Ⅰ 3 回目変 数 今日の講義講義で学ぶ内容 変数とは 変数の使い方 キーボード入力の仕方 変 数 変 数 一時的に値を記憶させておく機能 変数は 型 ( データ型 ) と識別子をもちます 2 型 ( データ型 ) 変数に記憶する値の種類変数の型は 記憶できる値の種類と範囲

Java講座

226


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

< F2D92DE82E8914B82CC977088D32E6A7464>

3 Java 3.1 Hello World! Hello World public class HelloWorld { public static void main(string[] args) { System.out.println("Hello World");

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

2

PowerPoint Presentation

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


Exam : 1z0-809 日本語 (JPN) Title : Java SE 8 Programmer II Vendor : Oracle Version : DEMO 1 / 8 Get Latest & Valid 1z0-809-JPN Exam's Question and Answe

ガイダンス

< F2D F B834E2E6A7464>

やさしいJavaプログラミング -Great Ideas for Java Programming サンプルPDF

TopLink å SampleClient.java... 5 Ò readallsample() querysample() cachesample() Ç..

Java プログラミング Ⅰ 7 回目 switch 文と論理演算子 条件判断文 3 switch 文 switch 文式が case の値と一致した場合 そこから直後の break; までを処理し どれにも一致しない場合 default; から直後の break; までを処理する 但し 式や値 1

JavaプログラミングⅠ

Transcription:

Java GUI 3 Java GUI 3 - サンプルプログラム (1) - 2011-09-25 Version 1.00 K. Yanai

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

1 概要まずは簡単なサンプルプログラムをみながら Java GUI の基本的なことを学びましょう 本サンプルは 図に示すようなひとつのメイン画面を使用します おおまかな流れを説明します (1) メイン画面を表示します (2) メイン画面で [ 参照 ] ボタンを選択します (3) ファイル選択のウィンドウが表示されますので ファイルを選択して [ 開く ] を選択します (4) メイン画面のテキスト領域に 選択したファイル名が表示されます (5) [ 実行する ] ボタンを選択すると 何かの処理をします ( ここでは何もしません ) (6) [ 終了する ] ボタンを選択すると本サンプルプログラムを終了します 選択したファイル名を表示 図 1-1 サンプルアプリケーションの画面 ( 概略 ) また ファイルを選択していない状態で [ 実行する ] ボタンを選択すると 図のよ うなウィンドウ ( メッセージダイアログ ) を表示します 1

図 1-2 メッセージダイアログ 2 クラス構成 本サンプルプログラムのクラス図を載せます 実際にコーディングするのは クラスだけです JFileChooser +main() + showopendialog() + getselectedfile() + getname() JOptionPane + showmessagedialog() 図 2-1 サンプルアプリケーションのクラス図 ( 概略 ) JFileChooser JOptionPane については 下記のサイトを参照してください http://java.sun.com/javase/ja/6/docs/ja/api/index.html?javax/swing/package-su mmary.html 2

3 ソースコード例 サンプルのソースコードを載せておきます line 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 リスト 3-1 package jp.lites.study.java.gui; import java.awt.eventqueue; import javax.swing.jframe; import java.awt.gridbaglayout; import javax.swing.jlabel; import java.awt.gridbagconstraints; import java.awt.insets; import java.awt.window; import javax.swing.jfilechooser; import javax.swing.joptionpane; import javax.swing.jpanel; import javax.swing.boxlayout; import javax.swing.jtextfield; import javax.swing.jbutton; import javax.swing.jsplitpane; import java.awt.flowlayout; import java.awt.event.actionevent; import java.awt.event.actionlistener; import java.io.file; public class { private JFrame frame; private JTextField textfield; private File file; /** * Launch the application. */ public static void main(string[] args) { EventQueue.invokeLater(new Runnable() { public void run() { try { window = new (); window.frame.setvisible(true); catch (Exception e) { e.printstacktrace(); 3

line 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 ); /** * Create the application. */ public () { initialize(); /** * ウィンドウを初期化します. */ private void initialize() { frame = new JFrame(); frame.setbounds(100, 100, 400, 178); frame.setdefaultcloseoperation(jframe.exit_on_close); frame.getcontentpane().setlayout(new FlowLayout(FlowLayout.CENTER, 5, 5)); JPanel panel_top = new JPanel(); FlowLayout fl_panel_top = (FlowLayout) panel_top.getlayout(); fl_panel_top.setalignment(flowlayout.left); frame.getcontentpane().add(panel_top); // ラベル : ガイドメッセージ JLabel lblnewlabel = new JLabel(" ファイルを選択し [ 実行する ] ボタンを選択してください "); panel_top.add(lblnewlabel); JPanel panel_middle = new JPanel(); frame.getcontentpane().add(panel_middle); // ラベル : ファイル名 JLabel label = new JLabel(" ファイル名 "); panel_middle.add(label); // テキスト入力領域 ( 選択したファイル名を入れます ) textfield = new JTextField(); panel_middle.add(textfield); textfield.setcolumns(20); // [ 参照 ] ボタン JButton button = new JButton(" 参照 "); panel_middle.add(button); 4

line 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 // [ 参照 ] ボタンが選択されたときの処理 button.addactionlistener(new ActionListener() { public void actionperformed(actionevent arg0) { JFileChooser filechooser = new JFileChooser(); int selected = filechooser.showopendialog(textfield); if (selected == JFileChooser.APPROVE_OPTION) { file = filechooser.getselectedfile(); String name = filechooser.getname(file); System.out.println(" ファイル名 = " + name); textfield.settext(name); else { System.out.println(" ファイルが選択されませんでした "); ); JPanel panel_buttom = new JPanel(); frame.getcontentpane().add(panel_buttom); panel_buttom.setlayout(new FlowLayout(FlowLayout.CENTER, 5, 5)); // [ 実行する ] ボタン JButton exec_button = new JButton(" 実行する "); panel_buttom.add(exec_button); // [ 実行する ] ボタンが選択されたときの処理 exec_button.addactionlistener(new ActionListener() { public void actionperformed(actionevent arg0) { System.out.println("[ 実行する ] selected"); ); // TODO: ダイアログを表示してください if (file == null) { JOptionPane.showMessageDialog(frame, " ファイルを選択してください "); return; JOptionPane.showConfirmDialog(frame, file + " を処理しますか?"); // TODO: [ はい ] [ いいえ ] [ 取り消し ] のうち // どのボタンが選択されたかを判断してお好みの処理をしてください // TODO: なんらかの処理をします System.out.println("**** TODO: (Dummy) なんらかの処理をします "); 5

line 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 132 // [ 終了する ] ボタン JButton terminate_button = new JButton(" 終了する "); panel_buttom.add(terminate_button); // [ 終了する ] ボタンが選択されたときの処理 terminate_button.addactionlistener(new ActionListener() { public void actionperformed(actionevent arg0) { System.out.println("[ 終了 ] selected"); frame.dispose(); ); 6

4 課題 ファイルを選択した状態で [ 実行する ] ボタンを選択すると 図のようなウィンド ウ ( ダイアログ ) を表示し どのボタンが選択されたかを判断し 適切な処理を行っ てください 図 4-1 課題 : 処理選択ウィンドウの表示と 選択したボタンの判断処理 // End of the document. 7