検索
連載

EclipseによるSWTアプリケーションの作成Eclipse徹底活用(7)(4/4 ページ)

Share
Tweet
LINE
Hatena
前のページへ |       

参考:コンポーネントリファレンス

シェル

 アプリケーションの大枠となるウィンドウです。SWTでは、このウィンドウをシェルと呼びます。

コンポーネント 説明 Swingへの対応
Shell タイトルバーや最小化/最大化/閉じるボタンを持たせるウィンドウ。ウィジットは、このウィンドウ内に配置する JFrame

入力・表示系

 文字列の入出力や、イベントの発生などを行うことができます。

コンポーネント 説明 Swingへの対応
Button 通常のボタン、チェックボタン、ラジオボタン、トグルボタンとして使用 JButton
JCheckBox
JRadioButton
JToggleButton
Text テキスト入力が可能なボックス。単一行/複数行、スクロールバーの有無などを指定できる JTextField
JTextArea
Combo テキストボックスとドロップダウンが組み合わさった、コンボボックス。テキストボックスは手入力を禁止(Read Only)することもできる JComboBox
Slider 数値を調節するため、ほかのウィジェットと同期してスクロールするバー JSlider

表示系

 文字列や画像の表示、一覧やツリーなど、さまざまなものを表示できます。

コンポーネント 説明 Swingへの対応
Label 文字や画像を表示 JLabel
Canvas 任意のグラフィックスを描画 JPanel
List 一覧を表示することができる 一覧の中から、単一行または複数行を選択するように指定できる JList
Table 2次元の表を表示することができる 列にはヘッダを付けることもできる JTable
Tree ディレクトリ階層など、親子関係を持つ要素を表示することができる JTree
ProgressBar 進ちょくを表すバーを表示することができる JProgressBar

メニュー・ツールバー

 ウィンドウの上部に、メニューやツールバーを配置できます。

コンポーネント 説明 Swingへの対応
Menu 「ファイル」や「ヘルプ」といったメニューをメニューバー上に表示 JMenu
ToolBar アイコンや文字を持つボタンから構成されるツールバーを表示 JToolBar
CoolBar マウスでドラッグすることにより配置を変更することのできるツールバー なし

コンテナ系

 ほかのウィジェットを中に含めることができます。

コンポーネント 説明 Swingへの対応
Composite ほかのウィジェットを中に含めることができる JPanel
Group Compositeと同様にほかのウィジェットを中に含めることができ、さらに枠で囲むことができる JPanel + Border
TabFolder タブによりページを切り替えることができる JTabbedPane
SashForm エリアを2つに区切る。区切りをマウスで移動することができる JSplitPane

ダイアログ

 次の6種類のダイアログが使用できます。

コンポーネント 説明 Swingへの対応
MessageBox メッセージの表示ができる JOptionPane
FileDialog ファイルの指定が行える JFileChooser
DirectoryDialog ディレクトリの指定が行える JFileChooser
ColorDialog 色の指定が行える JFileChooser
FontDialog フォントの指定が行える なし
PrintDialog プリンタの指定が行える Java Print APIのPrinterJob

 以下は目に見えるウィジェットではありませんが、アプリケーションを構築するうえで必要なものです。

レイアウトマネージャ

 レイアウトを指定し、コンテナ系ウィジェット内の配置を調整できます。

コンポーネント 説明 Swingへの対応
FillLayout すき間を詰めて水平または垂直にウィジェットを配置する BoxLayout
FormLayout 他のウィジェットのレイアウトを参照して配置することができる。例えば「ウィジェットAの下端からnピクセル離れてウィジェットBを置く」といった指定ができる SpringLayout
RowLayout 水平または垂直にウィジェットを配置します。マージンやウィジェット間のスペースを指定できる BoxLayout
FlowLayout
GridLayout HTMLのtableタグに似た形式で配置できるowspanやcolspanを指定できる GridBagLayout
StackLayout トップにあるウィジェットだけを表示するレイアウト CardLayout
注:SwingではJava AWTのレイアウトマネージャを使用するため、java.awt配下のクラスも「Swingへの対応」として列挙しています。

イベントリスナー

 キー入力やウィジェットの選択などのさまざまなイベントにより、起動されるインターフェイスです。アプリケーションのロジックは、リスナーを実装したクラスをウィジェットに登録することで、イベント発生時に呼び出されます。

コンポーネント 説明 Swingへの対応
SelectionListener ウィジェットが選択されたときに起動され多くのウィジェットに設定することができる ActionListener
KeyListener キーボードからキー入力されたときに起動される KeyListener
FocusListener ウィジェットがフォーカスを得たり失ったときに起動される FocusListener
MouseListener ウィジェット上でマウスを押したり、放したり、ダブルクリックしたときに起動される MouseListener
注:SwingではJava AWTのリスナーを使用するため、java.awt.event配下のインターフェイスも「Swingへの対応」として列挙しています。

 また、SWTでは各リスナーを空の処理で実装するアダプタークラス(SelectionAdapterなど)を提供しています。リスナーで規定されているすべてのメソッドを実装する必要がなく、必要なメソッドのみ実装すればよいため便利です。

そのほか

コンポーネント 説明 Swingへの対応
Display SWTとプラットフォームとの間の接続を表します。アプリケーションの最初に作成され、最後に削除される なし
Program ファイルの拡張子によって関連付けられている外部のプログラムを起動できる なし
SWT ウィジェットを生成するときに指定するスタイルを、定数として定義している なし

筆者プロフィール

金子 崇之(かねこ たかゆき)

現在、株式会社NTTデータ ビジネス開発事業本部に所属。技術支援グループとして、J2EEをベースにしたWebシステム開発プロジェクトを対象に、技術サポートを行っている。特に、性能・信頼性といった方式技術を中心に活動中。

岡本 隆史(おかもと たかし)

NTTデータ 技術開発本部 所属。Debian GNU/Linuxの優れたメンテナンス性と他のディストリビューションを圧倒するパッケージ数に引かれDebianを使い始めたのをきっかけに、Debian プロジェクトの開発者となりJavaサポートの強化を行う。『Jakartaプロジェクト徹底攻略』(技術評論社)、『WEB+DB PRESS』(技術評論社)、『Java World』(IDGジャパン)、『JAVA Developer』(ソフトバンクパブリッシング)などで執筆活動を行っている。



Copyright © ITmedia, Inc. All Rights Reserved.

前のページへ |       
ページトップに戻る