ツールバー
ツールバーの配置
Swing のツールバーは、極めて柔軟な機能を備えています
しかも、Swing のツールバーは完全に軽量コンテナとして独立しているため
従来の JComponent と同様の扱いで作成できる統一された設計をもちます
ツールバーは javax.swing.JToolBar で実装されています
このクラスは JComponent クラスを継承しています
java.lang.Object
|
+--java.awt.Component
|
+--java.awt.Container
|
+--javax.swing.JComponent
|
+--javax.swing.JToolBar
public class JToolBar extends JComponent
implements SwingConstants, Accessible
このクラスは、次のようなコンストラクタを公開しています
public JToolBar()
public JToolBar(int orientation)
public JToolBar(String name)
public JToolBar(String name , int orientation)
orientation には初期状態の方向を指定します
SwingConstants の HORIZONTAL または VERTICAL のいずれかを指定します
name には、このツールバーのテキストを指定します
後は、基本的な使い方は通常のコンテナと同じなので分かるでしょう
コンポーネントを追加するには add() メソッドを用います
ツールバーは、コンテナに add() メソッドを使って追加することができます
Swing では、ツールバーもコンポーネントのひとつとして扱われます
ツールボタンの間にセパレータがほしい場合は
JToolBar.addSeparator() メソッドを使って末尾に間隔を追加できます
public void addSeparator()
public void addSeparator(Dimension size)
size にはセパレータのサイズを指定します
Swing のツールバーは極めて柔軟な構造になっていて
デフォルトでフローティングをサポートしているため、ユーザーが自由に移動させたり
ツールバーをウィンドウ化するといったことが可能になっています
import java.awt.*;
import javax.swing.*;
public class Test extends JApplet {
public void init() {
JToolBar tool = new JToolBar("Kitty's Bar");
tool.add(new JButton(new ImageIcon("icon1.jpg")));
tool.add(new JButton(new ImageIcon("icon2.jpg")));
tool.addSeparator();
tool.add(new JButton("Kitty on your lap"));
getContentPane().add(tool , BorderLayout.NORTH);
}
}
このプログラムは、単純なアイコンと文字列のボタンを持つ
ツールバーを JApplet のコンテンツペインに追加しています
ツールバーは、フローティングがサポートされているため
ユーザーがドラッグすることによって位置や向きを変えたり、ウィンドウ化することができます
ウィンドウにすると、タイトルバーにツールバーの名前が生かされています