
GUIプログラミングとは?
GUIはGraphical User Interfaceの略です。GUIプログラミングとはビジュアル
なGUIコンポーネントを用いてユーザーがプログラム実行の主導権を得るよう
な対話プログラムを実現するプログラミングのことです。コンソールベースの
CUI(Character User Interface)ではプログラムからのメッセージに応じてユー
ザーが入力を行ないました。
それに対し、GUIプログラムでは、ユーザーがボタンなどを操作することでプ
ログラムがリアクションするということになります。このようなプログラムは
イベント駆動(Event Driven)と呼ばれます。プログラム側はイベントリスナ
という仕組みを実装して伝えられたイベントに対応します。
AWTとSwing
JavaでGUIプログラミングをするときは、Javaのライブラリが提供する既成の
GUIコンポーネントを利用します。java.awtパッケージとjavax.swingパッケー
ジというパッケージです。以下のようにクラスファイルの先頭にパッケージを
importします。
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
AWT(Abstract Window Toolkit)とSwingは基本的には同じような扱いです
が、同じことをことなる方法で実現しています。違いを以下に示します。
- AWTは、OSが用意しているGUI部品をJavaから使えるようにしたもの(X
WindowではMotifなどがある)。
- AWTでつくったコンポーネントはみかけがOSごとに異なる。Swingは、ほと
んど全ての部品をJavaで描いたもの。見かけはどのOSでも同じ。
- AWTの方が動作が軽い。Swingはやや遅い。メモリも食う。
- AWTは、各OSの共通部分の基本的なGUI部品しか持っていない。Swingは豊富
な部品を持っている。
- AWTはカスタマイズや組み合わせに制限が多い。例えば、ボタンの外見を変
えようとすると大変。Swingはカスタマイズや組合わせが容易。ただし、そ
の分、使い方もやや複雑になっている。
というわけで、今回は主にSwingを使ったGUIプログラミングをします。
JavaプラットフォームパッケージAPI仕様
Javaの提供するクラスは非常に多く、覚え切れるものではありません。
参考書にもすべてのクラスが載っているとは限りません。すべてのクラスのメ
ソッドやコンストラクタを調べるには以下のURLを見るとよいでしょう。
http://java.sun.com/j2se/1.4/ja/docs/ja/api/
本サイトにおける全コンテンツの無断複製,転写,公衆送信を禁じます
Copyright(C) 2003-2010 Eiko Takaoka. All rights reserved.