第3回:基本的なGUIコンポーネントの利用 (4/4)

Eclipse実践プラグイン開発
Eclipse実践プラグイン開発

第3回:基本的なGUIコンポーネントの利用
著者:ビーブレイクシステムズ  大森 洋行   2005/7/15
前のページ  1  2  3  4
スライダー(Slider)

   SWTのorg.eclipse.swt.widgets.Sliderクラスは、SwingのJSliderに対応します。スタイルを変更することで、以下のような様々な種類のスライダーを作成できます。
水平方向のスライダー


Slider horizontalSlider = new Slider(parent, SWT.HORIZONTAL);
horizontalSlider.setMinimum(0);
horizontalSlider.setMaximum(100);
horizontalSlider.setIncrement(1);
horizontalSlider.setBounds(x, y, width, height);

垂直方向のスライダー


Slider horizontalSlider = new Slider(parent, SWT.VERTICAL);
horizontalSlider.setMinimum(0);
horizontalSlider.setMaximum(100);
horizontalSlider.setIncrement(1);
horizontalSlider.setBounds(x, y, width, height);
スケール(Scale)

   SWTのorg.eclipse.swt.widgets.Scaleクラスは、上述のスライダーと利用方法も含めてほぼ同じです。



Scale horizontalScale = new Scale(parent, SWT.HORIZONTAL);
horizontalScale.setMinimum(0);
horizontalScale.setMaximum(100);
horizontalScale.setIncrement(1);
horizontalScale.setBounds(x, y, width, height * 2);
テーブル(Table)

   SWTのorg.eclipse.swt.widgets.Tableクラスは、SwingのJTableに対応します。JTableと比較すると機能的に劣る面もありますが、TableクラスをラップしたJFaceのorg.eclipse.jface.viewers.TableViewerクラスを使用すると、比較的簡単に高機能なテーブルを作成できます。

   テーブルの基本的な利用方法は、Tableクラスを作成し、ヘッダとデータを設定するという流れになります。



⁄⁄ ボーダー付きの複数選択可能なテーブルを生成する
Table table = new Table(parent, SWT.MULTI | SWT.BORDER);
table.setBounds(10, 10, 215, 120);

⁄⁄ ヘッダを可視にする
table.setHeaderVisible(true);

⁄⁄ ヘッダを設定
String[] cols = { "Column1", "Column2", "Column3" };
for (int i = 0; i < cols.length; i++) {
    TableColumn col = new TableColumn(table, SWT.CENTER);
    col.setText(cols[i]);
    col.setWidth(70);
}
⁄⁄ データを設定
for (int i = 0; i < 5; i++) {
    TableItem item = new TableItem(table, SWT.NULL);
    String[] data = { String.valueOf(i + 1) + "-1",
            String.valueOf(i + 1) + "-2",
            String.valueOf(i + 1) + "-3" };
    item.setText(data);
}

   このようにデータを表示するだけの単純なテーブルであれば、SWTのTableクラスでもそれほど不便を感じることはありません。しかしセルのデータ編集や並び替え、画像の設定などが可能なテーブルを作成する場合には、JFaceで提供されているテーブルビューア(TableViewer)を利用します。テーブルビューアは次回説明します。


ツリー(Tree)

   SWTのorg.eclipse.swt.widgets.Treeクラスは、SwingのJTreeに対応します。ツリーもテーブルと同様に、TreeクラスをラップしたJFaceのorg.eclipse.jface.viewers.TreeViewerを使用すると、簡単に高機能なツリーを作成できます。



Tree tree = new Tree(parent, SWT.BORDER);
tree.setBounds(x, y, 150, 80);

⁄⁄ ルートとなる要素を追加
TreeItem root = new TreeItem(tree, SWT.NULL);
root.setText("ルート");
⁄⁄ ルートの子要素を追加
TreeItem treeItem1 = new TreeItem(root, SWT.NULL);
treeItem1.setText("子要素1");
⁄⁄ ルートの子要素を追加
TreeItem treeItem2 = new TreeItem(root, SWT.NULL);
treeItem2.setText("子要素2");
⁄⁄ ルートの孫要素を子要素1に追加
TreeItem treeItem3 = new TreeItem(treeItem1, SWT.NULL);
treeItem3.setText("孫要素1");
まとめ

   今回はSWTの代表的なGUIコンポーネントの基本的な利用方法について紹介しましたが、雰囲気は掴めてきたでしょうか。今回紹介したSWTのGUIコンポーネント以外にも、org.eclipse.swt.widgetsパッケージやorg.eclipse.swt.customパッケージにたくさんありますので、SWT/JFaceのAPIドキュメントで確認してみてください。

   次回は、JFaceのテーブル作成用のコンポーネントであるテーブルビューア(TableViewer)について説明します。

前のページ  1  2  3  4


ビーブレイクシステムズ社 大森 洋行
著者プロフィール
ビーブレイクシステムズ社  大森 洋行
中堅システム開発会社にて、データベース検索ソフトの開発・導入コンサルティング・セミナー講師に従事。その現場の中で、Java及びオープンソースを用いたシステム開発は今後のシステム開発の主流になると考え、それらを独学で学ぶ。本格的にそれらを用いた開発に携わるため、ビーブレイクシステムズに入社。現在、データ項目やその流れの分析に重点をおきながら、Javaやオープンソースを用いたシステム開発に携わる。


INDEX
第3回:基本的なGUIコンポーネントの利用
  はじめに
  ボタン(Button)
  リスト(List)
スライダー(Slider)
Eclipse実践プラグイン開発
第1回 Eclipseとプラグイン
第2回 プラグインの配布とインストール
第3回 基本的なGUIコンポーネントの利用
第4回 JFaceのGUIコンポーネント
第5回 メニューとポップアップ・メニューの拡張
第6回 ビューの拡張
第7回 エディタの拡張
第8回 パースペクティブの拡張
第9回 プロパティと設定の拡張
Eclipseが提供するBIとレポーティングツール
第1回 インストールからはじめるEclipse BIRT
第2回 データベースのデータをレポートに出力しよう
第3回 レポートを作成しよう
第4回 スクリプティング機能・Tomcatでのプレビュー・レポートエンジンを使用したレポート出力
Eclipse3ではじめるJava Webアプリケーション開発
第1回 Eclipse3の概要とインストール
第2回 Eclipse3の基本機能
第3回 Eclipse3の基本操作を憶えよう
第4回 Eclipseの便利な機能
第5回 Webアプリケーションの開発(1)〜JSP作成〜
第6回 Webアプリケーションの開発(2)〜サーブレットの作成〜
第7回 データベースの利用
第8回 フレームワークの利用
第9回 O/Rマッパーの利用
第10回 JUnitの利用
第11回 Antの利用
第12回 CVSの利用(1)
第13回 CVSの利用(2)
Eclipse WTPによる標準開発ツールの提供
第1回 Eclipse WTPの概要とインストール
第2回 Eclipse WTPでHello World
第3回 Eclipse WTPのDB系ツールを使う
第4回 Eclipse WTPのエディタとその他のツール

人気記事トップ10

人気記事ランキングをもっと見る