本連載は、Javaによるプログラミングを始めて間もない初心者、かつGUIアプリケーションを作りたいと考えている方を対象にしています。GUIアプリケーションとはウィンドウ、ボタン、メニューやアイコンといった部品を使ったユーザーインターフェイス(操作画面)を提供するアプリケーションのことです。サーブレットやJSPを学習する機会や使う機会が多い中で、あらためてJavaの基本を学習したい読者にもお勧めできます。
なお、本連載ではユーザーインターフェイスをどのように設計するのか(ユーザーにとって優れた操作画面とはなど)については説明しません。興味のある方は「Webアプリケーションのユーザーインターフェイス」(リッチクライアント&帳票)を参考にしてください。本連載を通じて、簡単にGUIアプリケーションが作れることを皆さんに体感していただければと思います。
本連載では以下の製品を利用します。これらのダウンロードやインストール方法は、「EclipseでJavaに強くなる」(Java Solution)に詳しいので、参照しながらインストールと設定を行ってください。
JavaにはGUIアプリケーションを作るためのクラスライブラリ(クラス、インターフェイス群)として「AWT(Abstract Windows Toolkit)」と「Swing(スウィング)」があります。
少し昔の話になりますが、Java2(JDK1.2)が登場する以前は、AWTを利用することでしかGUIアプリケーションは作れませんでした(Swingは標準でサポートされていませんでした)。しかし、AWTには「動作するOSによってGUI部品(ボタン、ラベル等)の見栄えが異なる」「利用できるGUI部品の種類が少ない」といった問題があり、それらを改良(クラス拡張)する形でSwingが登場しました。
AWT、Swingのどちらを使っても同じGUIアプリケーションを作成することは可能ですが、最近はSwingを利用して作られることの方が多いようです。
Swingの基本的な技術や用語を説明する前に、まずは簡単なGUIアプリケーション(ウィンドウを作成する)を作ってみましょう。
「SwingChapter01」という名前のプロジェクトを作成します。
1.[ファイル]→[新規]→[プロジェクト]を選択
2.[Javaプロジェクト]を選択し[次へ]を押下
3.プロジェクト名などを入力し[終了]を押下 ・プロジェクト名に「SwingChapter01」を入力
4.パッケージ・エクスプローラ上に「SwingChapter01」プロジェクトが表示されていることを確認
GUIアプリケーションの起動およびウィンドウの作成を担当するクラス「SwingAppMain」を作成します。
1.新規Javaクラスを作成。[ファイル]→[新規]→[クラス]を選択、[新規Javaクラス]ダイアログで諸項目を設定(画面5)し[終了]を押下 ・パッケージに「swing.sample」を入力
[終了]を押下すると、画面6のクラスが作成されます。
2.「javax.swing.JFrame」をインポート(リスト1の赤字部分を記述する)
リスト1 赤字部分を記述する |
import javax.swing.JFrame; public class SwingAppMain {
|
3.mainメソッド内で「JFrame」クラスのインスタンス(mainFrame)を生成し初期設定を行う(リスト2の赤字部分を記述し、以下の項目を実装する)・[閉じる]ボタンが押下されたときのアプリケーションの振る舞い
リスト2 赤字部分を記述する |
import javax.swing.JFrame; public class SwingAppMain {
|
4.[実行]→[Javaアプリケーション]を選択して、実行する
実行した結果(画面8)、タイトルバーに「サンプル」と表示されたウィンドウが開きます。
非常にシンプルなGUIアプリケーションですが、数行のソースコードを記述するだけでJavaでも簡単にGUIアプリケーションが作れることを体験していただけたと思います。
SwingでGUIアプリケーションを作成するための基礎知識は次回から解説しますが、今回登場した「JFrame」クラスについて、次回の予習として簡単にご紹介しておきましょう。
JFrameはウィンドウを作成するためのクラスです。そのため、Swingを利用したGUIアプリケーションでは、必ず初めにJFrameクラスのインスタンスを生成し、その後、生成したインスタンスのメソッドを介してウィンドウの初期設定をすることになります。リスト2から切り出した以下のリストを見てください。コメントでそれぞれの行の役割を説明しています。
public static void main(String[] args) {
|
今回はウィンドウを表示するだけのシンプルなGUIアプリケーションを作る方法を解説しました。次回はボタンやラベルといった、ウィンドウ以外の部品を利用したGUIアプリケーションを作る方法について解説します。
Copyright © ITmedia, Inc. All Rights Reserved.