Eclipse での SWT プログラム作成手順
このページでは,SWT と Eclipse を使い,グラフィカル・ユーザ・インタフェースを持つ Java プログラムを作る手順を図解で説明する.SWT のインストール手順も説明する.
必要となるソフトウェア
- Eclipse のWebページの記述に従って,Eclipse のインストールが終わっていること.
設定項目
SWT 配置ディレクトリを決めて置いてください.どこでもいいですが,あとで思い出すことができるディレクトリがいいです. このページでは,次のように書く.
- SWT 配置ディレクトリ: C:\Program Files\Java
前もって,Eclipse インストールディレクトリを調べておいてください このページでは,次のように書く.
- Eclipse インストールディレクトリ: C:\Program Files\eclipse3.5\
SWT のインストール
- SWT の Web ページを開く http://www.eclipse.org/swt/
- Stable の下の Windows を選択
「Release」の下が, 「Stable」と「Development」に分かれている. 「Stable」を使いたいので, 「Stable」の下の 「Windows」をクリック.
- ミラーサイトの選択
「Download from: [Japan] ...」のところをクリック
* もし,[Japan] になっていなければ,このページの下の方にあるリストから選ぶ.
- ダウンロードが始まるので確認する
swt-3.4-win32-win32-x86.zip というファイル名のファイルのダウンロードが始まる.
- SWT の Web ページに戻る
- Stable の下の「Language Pack」をクリック
これは,「Language Pack」をダウンロードしたいから.
- 「NLpack1」を選択
日本語を使いたいので,「NLpack1」を選択する.
- ダウンロードが始まるので確認する
org.eclipse.swt.nl1_3.2.0.v200606220026.jar というファイル名のファイルのダウンロードが始まる.
- 解凍
先ほどダウンロードしたファイル swt-3.4-win32-win32-x86.zip を展開(解凍)する. swt-3.4-win32-win32-x86 という名前のディレクトリができる.
- 出来たディレクトリ swt-3.4-win32-win32-x86 を,C:\Program Files\java の下に置く.
- org.eclipse.swt.nl1_3.2.0.v200606220026.jar を Eclipse の plugins ディレクトリ C:\Program Files\eclipse3.5\eclipse\plugins の下にコピーする.
Eclipse での SWT を使う Java プログラムの作成手順
以下,Eclipse を使う. プロジェクトのインポート,クラスの定義と実行という一連の操作を,図解で説明する.
Eclipse の使用にあたって,事前に決めておく事項
Eclipse のプロジェクトをインポートし,パッケージとクラスを新しく定義します. このページでは,プロジェクト名,パッケージ名,メインとなるクラス名は次のように記述します. (すでに同じ名前のプロジェクトがある,といったときは,プロジェクト名を変えてください).
- プロジェクト名: HelloWorld
- パッケージ名: hoge.hoge.com
- メインとなるクラス名: HelloWorld
プロジェクトのインポート
下記の手順で,プロジェクトをインポートします.
- (もし,プロジェクト・エクスプローラが開いていなければ)プロジェクト・エクスプローラを開く
「ウインドウ (Window)」→「ビューの表示 (Show View)」→「プロジェクト・エクスプローラ (Project Explorer)」 と操作する.
- プロジェクトのインポートの開始
「ファイル」→「インポート (Import)」
または,プロジェクト・エクスプローラ内で,右クリック→ 「インポート (Import)」→「インポート (Import)」 - 「既存プロジェクトをワークスペースへ」の選択
インポート元を選ぶためのウインドウが開くので, 「既存プロジェクトをワークスペースへ」を選び, 「OK」をクリックする.
- 「ルート・ディレクトリー」の選択
- ルート・ディレクトリーとして, SWT の ZIP ファイルを展開して出来たディレクトリである C:\Program Files\Java\swt-3.4-win32-win32-x86を指定する.
- 「プロジェクトをワークスペースにコピー」を チェックする
以上が終わったら,「完了」をクリックする.
- プロジェクトがインポートできたことの確認
プロジェクト・エクスプローラに 新しいプロジェクト「org.eclipse.swf」が増えていることを確認する.
- プロジェクト名の変更の開始
プロジェクト・エクスプローラで, 新しいプロジェクト「org.eclipse.swf」を右クリックし, 「リファクタリング」→「名前変更」と操作する.
- 新しいプロジェクト名の設定
ウインドウが開くので,新しいプロジェクト名を付ける.
パッケージ作成
Eclipse のプロジェクト・エクスプローラを使って, パッケージを作成します. パッケージ名には hoge.hoge.com のようなドメイン名を付ける習慣があることに注意してください. このページでは,作成するパッケージ名は,hoge.hoge.com と書く. (パッケージ名を変えるときは,読み替えてください).
- (もし,プロジェクト・エクスプローラが開いていなければ)プロジェクト・エクスプローラを開く
「ウインドウ」→「ビューの表示」→「プロジェクト・エクスプローラ」 と操作する.
パッケージの作成,クラスの作成などの作業は,プロジェクト・エクスプローラで行う.
- パッケージを新規作成すべきプロジェクトの選択
プロジェクト・エクスプローラに,プロジェクト一覧が表示されているはずです. パッケージを新規作成したいプロジェクト名 HelloWorld を右クリックして, 「新規」→「パッケージ」と操作する.
- パッケージ名の設定
名前のところに,パッケージ名 hoge.hoge.com を設定し,「終了」をクリックする.
- パッケージの確認
プロジェクト・エクスプローラにおいて, パッケージ hoge.hoge.com が増えていることを確認する.
(オプション) Java ソースの添付
- パッケージ・エクスプローラ内の「swt.jar」を右クリック
- 「プロパティー (Properties)]
- ウインドウが開くので,「Java ソースの添付 (Java Source Attachment)」→「外部ファイル (External File)」を選ぶ.
- C:\Program Files\java\swt-3.4-win32-win32-x86\swt.jar\src.zipを指定
- 「OK」
これで,Javadoc コメントのポップアップ表示やソースの閲覧ができるようになる
クラス定義
クラス定義の手順は次の通りです. 前準備として,パッケージ hoge.hoge.com を作成済みであること.
- クラス定義の開始
プロジェクト・エクスプローラにおいて, クラスを定義したいパッケージ名 hoge.hoge.com を右クリック.その後, 「新規」→「クラス」と操作する.
* 「新規」を選んだとき,「クラス」が現れないことがあります. そのときは, 「新規」→「その他」→「Java」→「クラス」と操作する.
プロジェクト・エクスプローラで, パッケージ名 hoge.hoge.comが表示されていないときは, プロジェクト名の下の 「Java リソース; src」または「src」の下を展開して下さい.
- 定義すべきクラス名等の指定
Java パッケージ名,クラス名を入力できるウインドウが開くので,設定を行う.
- 「パッケージ (package)」(2行目の「パッケージのところ): パッケージ名 「hoge.hoge.com」を設定.(「hoge.hoge.com」になっていなければ修正すること).
- 「クラス名」(4行目の「名前」のところ): HelloWorld
- 「public static void main(String[] args)」: チェックする
- クラスファイル一覧の表示
プロジェクト・エクスプローラで, パッケージ名 hoge.hoge.com の左横の「+」をクリックすると, クラスファイル一覧が表示されます.
- 定義したいクラスのファイルを開く
HelloWorld クラスを定義したいので, プロジェクト・エクスプローラの パッケージ名 hoge.hoge.com の下にあるクラスファイル一覧の中から, 「HelloWorld.java」をダブルクリックします. すると,エディタが開きます.
このように,Eclipse のプロジェクト・エクスプローラで,定義したいクラスの「クラス名.java」 をダブルクリックすると,エディタが開くことになっています.
なお,別のクラスを追加したいときは, パッケージ名を右クリックして「新規」→「クラス」です.
- エディタでクラス HelloWorld を定義する.
下記のクラス定義をカットアンドペーストしてみて下さい(テスト用に作ったクラス定義です). (パッケージ名を「hoge.hoge.com」と書いているので,パッケージ名を別の名前にしている場合には,適切に読み替えてください).
package hoge.hoge.com; import org.eclipse.swt.SWT; import org.eclipse.swt.layout.RowLayout; import org.eclipse.swt.widgets.Button; import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Shell; import org.eclipse.swt.widgets.Text; public class HelloWorld { public static void main(String[] args) { Display display = new Display(); Shell shell = new Shell(display); shell.setText("Hello World"); shell.setLayout(new RowLayout(SWT.VERTICAL)); Text text1 = new Text(shell, SWT.BORDER ); Text text2 = new Text(shell, SWT.BORDER ); Text text3 = new Text(shell, SWT.BORDER ); Button button1 = new Button(shell, SWT.BORDER); button1.setText("処理開始"); shell.open(); while (!shell.isDisposed ()) { if (!display.readAndDispatch ()) { display.sleep (); } } display.dispose (); } }
- ソースを保存
「ファイル」→「保管」または CTRL+S で保存される. 保存時にコンパイルされる
コンパイル時のエラーや警告があれば, Eclipse 内の問題・ビューに表示されるので確認する.
実行
- 実行したいクラスを選び,右クリック
プロジェクト・エクスプローラで,パッケージ名の下にクラスファイル一覧が出ているので,実行したいクラスの「クラス名.java」 (つまり,HelloWorld.java) を右クリック.
- 「実行」 → 「Java アプリケーション」と操作
- 実行結果は次のようになる.
【関連する外部ページ】 http://www.thinkit.co.jp/free/tech/11/3/1.html
【関連する外部ページ】 http://www-06.ibm.com/jp/developerworks/opensource/030328/j_os-ecgui1.shtml
【関連する外部ページ】 http://www.eclipse.org/swt/examples.php
- パッケージ・エクスプローラ内の「swt.jar」を右クリック