BoxLayoutクラスの定義とコンストラクタ
広告
BoxLayoutクラスの定義を確認します。クラス図は次のようになっています。
java.lang.Object javax.swing.BoxLayout public class BoxLayout extends Object implements LayoutManager2, Serializable
BoxLayoutクラスのコンストラクタ
BoxLayoutクラスをを利用するにはコンストラクタを使ってBoxLayoutクラスのオブジェクトを作成します。どのようなコンストラクタが用意されているか確認してみます。
コンストラクタ |
---|
BoxLayout(Container target, int axis) コンポーネントを指定された方向に配置するレイアウトマネージャーを生成します。 |
コンストラクタは1つ用意されています。ではコンストラクタを確認してみます。
public BoxLayout(Container target, int axis)
コンポーネントを指定された方向に配置するレイアウトマネージャーを生成し ます。 パラメータ: target - 配置する必要があるコンテナ axis - 配置する必要があるコンテナコンポーネントの配置方向。 BoxLayout.X_AXIS、 BoxLayout.Y_AXIS。 BoxLayout.LINE_AXIS または BoxLayout.PAGE_AXIS 例外: AWTError - axis の値が無効な場合
1番目の引数にはレイアウトマネージャーを設定するコンテナのオブジェクトを指定します。そして2番目にはコンポーネントをどの方向に配置していくのかを指定します。2番目の引数については次のページで詳しく見ていきます。
実際の使い方は次のようになります。
JPanel panel = new JPanel(); panel.setLayout(new BoxLayout(panel, BoxLayout.LINE_AXIS));
サンプルプログラム
では簡単なサンプルを作成して試してみます。
import javax.swing.*; import java.awt.Font; import java.awt.BorderLayout; public class BoxLayoutTest1 extends JFrame{ public static void main(String[] args){ BoxLayoutTest1 frame = new BoxLayoutTest1(); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setBounds(10, 10, 300, 200); frame.setTitle("タイトル"); frame.setVisible(true); } BoxLayoutTest1(){ JButton button1 = new JButton("Google"); JButton button2 = new JButton("Yahoo!"); button2.setFont(new Font("Arial", Font.PLAIN, 30)); JButton button3 = new JButton("MSN"); JPanel p = new JPanel(); p.setLayout(new BoxLayout(p, BoxLayout.PAGE_AXIS)); p.add(button1); p.add(button2); p.add(button3); getContentPane().add(p, BorderLayout.CENTER); } }
上記をコンパイルした後で実行すると次のように表示されます。
今回は縦方向にコンポーネントを配置するように設定してあります。
( Written by Tatsuo Ikura )
著者 / TATSUO IKURA
これから IT 関連の知識を学ばれる方を対象に、色々な言語でのプログラミング方法や関連する技術、開発環境構築などに関する解説サイトを運営しています。