トップページ -> 実践知識 -> Java プログラミング入門 -> ダイアログボックスなど
[サイトマップへ]  

ダイアログボックスなど

サイト構成 連絡先,業績など 実践知識 データの扱い コンピュータ 教材 サポートページ

AWT を使ったファイルダイアログボックス

プログラムの内容

ファイルのダイアログボックスからファイル名を選択して そのファイルの中身をコンソール画面に出力する。

結果

C:\workspace\File_IO\output.txt
1:福岡県
2:福岡市
3:東区
4:箱崎

ソースコード

package hoge.hoge.com;

import java.awt.*;
import java.awt.event.*;
import java.io.*;

public class DialogTest2 extends WindowAdapter implements ActionListener {

	Frame frm = new Frame("File Dialog");
	
	public static void main(String[] args) {
		// TODO 自動生成されたメソッド・スタブ
		DialogTest2 win = new DialogTest2();
	}
	public DialogTest2() {
		frm.setSize(200 , 100);
		
		Button load = (Button)frm.add(new Button("LOAD"));
		load.addActionListener(this);

		frm.setVisible(true);
		frm.addWindowListener(this);
	}
	public void actionPerformed(ActionEvent e) {
		FileDialog fd = new FileDialog(frm , "ファイル読み込み" , FileDialog.LOAD);
		fd.setVisible(true);
		
		String str = fd.getDirectory() + fd.getFile();
		
		if(str.equals("nullnull")){
		}else{
			try{
				System.out.println(str);
				String data;
				BufferedReader fr =
					new BufferedReader(new InputStreamReader(new FileInputStream(str), "JISAutoDetect"));
				// ファイル出力ストリームを取得
				while((data=fr.readLine())!=null){
					System.out.println(data);
				}
			}catch(IOException ex){
				System.out.println("入出力エラー!");
				ex.printStackTrace();
			}
		}
			
	}
	public void windowClosing(WindowEvent e) {
		System.exit(0);
	}

}

JOptionPage を使ったダイアログボックス

JOptionPaneクラスを用いたサンプル

参考Webページ http://www.geocities.jp/h2fujimura/appendix/Component/JOptionPane/index.html http://www.geocities.jp/h2fujimura/appendix/Component/JOptionPane/index.html

package hoge.hoge.com;

import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.awt.Dimension;
import javax.swing.JFrame;
import javax.swing.JOptionPane;

public class DialogTest {
	public static void main(String[] args) {
		//JFrame frame = new JFrame("JOptionPanel Demo");
		//frame.addWindowListener(new WindowAdapter() {
		//	public void windowClosing(WindowEvent e) { System.exit(0); }
		//});
		//frame.setSize(new Dimension(300,200));
		//frame.setVisible(true);
		String ans =
			JOptionPane.showInputDialog(
					null,
					"文字列を入力してください",
					"入力画面",
					JOptionPane.QUESTION_MESSAGE);
		if(ans == null)
			JOptionPane.showMessageDialog(
					null,
					"何も入力されませんでした",
					"実行結果",
					JOptionPane.ERROR_MESSAGE);
		else
			JOptionPane.showMessageDialog(
					null,
					"入力結果:\n  " + ans,
					"実行結果",
					JOptionPane.PLAIN_MESSAGE);
	}
}

SWT の使用

参考 Web ページ http://www.thinkit.co.jp/free/tech/11/3/1.html

参考 Web ページ http://www-06.ibm.com/jp/developerworks/opensource/030328/j_os-ecgui1.shtml

参考 Web ページ http://www.eclipse.org/swt/examples.php

  1. Eclipseのダウンロードページ( http://www.eclipse.org/downloads/index.php)から,SWTをダウンロード.
  2. 解凍
  3. 出来たディレクトリ(swt-M20070201201330-win32-win32-x86)を,C:\Program Files\java の下に置く.
  4. Eclipse での作業.新規プロジェクトの作成

    「File (ファイル)」→「New (新規)」→「Project (プロジェクト)」

    プロジェクトの種類は Java プロジェクト.プロジェクト名は好きに付ける.

  5. SWT を使えるように設定

    コンパイル前に,パッケージ・エキスプローラ内のプロジェクト名を右クリック.

    ウインドウが現れるので,「Properties」. 別のウインドウが現れるので,「Java Build Path」

    ウインドウが現れるので, C:\Program Files\java\swt-M20070201201330-win32-win32-x86\swt.jar を指定する.

  6. (オプション) Java ソースの添付

    これで,Javadoc コメントのポップアップ表示やソースの閲覧ができるようになる

  7. 新しいパッケージと,クラス HelloWorld の定義

    パッケージ・エクスプローラで, 「New (新規)」→「Class (クラス)」

    package hoge.hoge.com;
    
    import org.eclipse.swt.widgets.Display;
    import org.eclipse.swt.widgets.Shell;
    
    public class HelloWorld {
    	  public static void main(String[] args) {
    		    Display display = new Display();
    		    Shell shell = new Shell(display);
    		    shell.setText("Hello World");
    		    shell.open();
    		    while (!shell.isDisposed ()){
    		      if (!display.readAndDispatch ()){
    		      display.sleep ();
    		      }
    		    }
    		    display.dispose ();
    		  }
    }
    
  8. クラス名を右クリック.「Run As」→「SWT Application」

JFace の使用法

  1. equinoxを入れる
    ウィンドウ→設定→Java→ビルド・パス→クラスパス変数→新規
    名前:equinox
    パス:ファイルをクリックし、(eclipseインストールフォルダ)\plugins\
    org.eclipse.equinox.common_3.2.0.v20060603.jar を選択
    
  2. パッケージエクスプローラでプロジェクトを右クリック

    ビルド・パス→ビルド・パスの構成→ライブラリー→ライブラリーの追加

    Standard Widget Toolkit(SWT) を選択→次へ→JFaceライブラリーのサポートを
    組み込む にチェック→終了
    
  3. http://www13.plala.or.jp/observe/JFace/jface_dialog.html 上記ページのサンプルをコピー&ペーストで実行できることを確認