コンストラクタ | 説明 | 引数 | 引数説明 |
---|---|---|---|
GridBagLayout() | GridBagLayout を作成 | - | - |
プロパティ | プロパティ説明 | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
anchor |
コンポーネントの表示に必要な領域が、 割りあてられた表示領域より小さい場合にどうするか
|
||||||||||||||||||||
fill |
コンポーネントの表示に必要な領域よりも 割りあてられた表示領域の方が大きい場合にどうするか
|
||||||||||||||||||||
gridheight gridwidth |
コンポーネントが使う表示領域の列数(行数) デフォルトは 1 指定数値以外に以下の定数を使用可能
|
||||||||||||||||||||
gridx gridy |
コンポーネントの配置する列(行)
|
||||||||||||||||||||
insets |
外部パディング コンポーネントと格子の最小間隔を指定 デフォルトは 0 |
||||||||||||||||||||
ipadx ipady |
内部パディング コンポーネントの格子の最小幅に追加する領域値 デフォルトは 0 |
||||||||||||||||||||
weightx weighty |
ウインドウサイズが広がった場合に どれだけ多く(少なく)広げるか デフォルトは 0 |
import java.awt.BorderLayout; import java.awt.GridBagConstraints; import java.awt.GridBagLayout; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JPanel; /** * LayoutManager サンプル06 * ・GridBagLayout * ・セル結合 * * @author みっちー */ public class LayoutManager06 extends JFrame { /** * 開始メソッド * * @param args パラメータ */ public static void main(String[] args){ LayoutManager06 frame = new LayoutManager06(); // 閉じるボタンをクリックされた場合の動作を設定 frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // ウインドウのタイトルを設定 frame.setTitle("LayoutManager サンプル06[GridBagLayout]"); // フレームの X座標、Y座標、幅、高さを設定 frame.setBounds(100, 200, 500, 150); // フレームを表示(これをしないと透明のフレームが立ち上がってしまう) frame.setVisible(true); } /** * コンストラクタ */ public LayoutManager06() { // ベースとなるパネルを[GridBagLayout]として作成 GridBagLayout layout = new GridBagLayout(); JPanel panelBase = new JPanel(); panelBase.setLayout(layout); // ボタンを作成 JButton button1 = new JButton("AAAAA"); JButton button2 = new JButton("BBB"); JButton button3 = new JButton("CCCCCCCC"); JButton button4 = new JButton("D"); JButton button5 = new JButton("EEE"); JButton button6 = new JButton("FFFFFFFFFFFFFFFFFFFF"); GridBagConstraints gbc = new GridBagConstraints(); gbc.gridx = 0; gbc.gridy = 0; gbc.gridwidth = 1; gbc.gridheight = 2; // 縦2つ分 layout.setConstraints(button1, gbc); gbc.gridx = 1; gbc.gridy = 0; gbc.gridwidth = 1; gbc.gridheight = 1; layout.setConstraints(button2, gbc); gbc.gridx = 2; gbc.gridy = 0; gbc.gridwidth = 1; gbc.gridheight = 1; layout.setConstraints(button3, gbc); gbc.gridx = 1; gbc.gridy = 1; gbc.gridwidth = 1; gbc.gridheight = 1; layout.setConstraints(button4, gbc); gbc.gridx = 2; gbc.gridy = 1; gbc.gridwidth = 1; gbc.gridheight = 1; layout.setConstraints(button5, gbc); gbc.gridx = 0; gbc.gridy = 3; gbc.gridwidth = 3; // 横3つ分 gbc.gridheight = 1; layout.setConstraints(button6, gbc); // パネルにボタンを配置 panelBase.add(button1); panelBase.add(button2); panelBase.add(button3); panelBase.add(button4); panelBase.add(button5); panelBase.add(button6); // ベースパネルを追加 getContentPane().add(panelBase, BorderLayout.CENTER); } }
2016/05/13 Windows 8.1 + Java 7 環境で全体を見直し 2007/12/07 新規作成