コンストラクタ | 説明 | 引数 | 引数説明 |
---|---|---|---|
SpringLayout() | SpringLayout を作成 | - | - |
引数 | 引数説明 | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
String e1 |
依存するエッジ
|
||||||||||
Component c1 | 依存するコンポーネント (制約を設定するコンポーネント) |
||||||||||
int pad | 依存する側とされる側の距離 | ||||||||||
String e2 | 依存されるエッジ 設定値は e1 を参照 |
||||||||||
Component c2 | 依存されるコンポーネント (基準コンポーネント) |
import java.awt.BorderLayout; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.SpringLayout; /** * LayoutManager サンプル08 * ・SpringLayout * * @author みっちー */ public class LayoutManager08 extends JFrame { /** * 開始メソッド * * @param args パラメータ */ public static void main(String[] args){ LayoutManager08 frame = new LayoutManager08(); // 閉じるボタンをクリックされた場合の動作を設定 frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // ウインドウのタイトルを設定 frame.setTitle("LayoutManager サンプル08[SpringLayout]"); // フレームの X座標、Y座標、幅、高さを設定 frame.setBounds(100, 200, 500, 200); // フレームを表示(これをしないと透明のフレームが立ち上がってしまう) frame.setVisible(true); } /** * コンストラクタ */ public LayoutManager08() { // ベースとなるパネルを[SpringLayout]として作成 SpringLayout layout = new SpringLayout(); JPanel panelBase = new JPanel(); panelBase.setLayout(layout); // ボタンを作成 JButton button1 = new JButton("AAAAA"); JButton button2 = new JButton("BBB"); JButton button3 = new JButton("CCCCC"); JButton button4 = new JButton("DDDDDDDD"); // 各ボタンの相対位置(制約)を設定 // ボタン1はパネルからの相対位置を設定 layout.putConstraint(SpringLayout.NORTH, button1, 10, SpringLayout.NORTH, panelBase); layout.putConstraint(SpringLayout.WEST, button1, 10, SpringLayout.WEST, panelBase); // ボタン2はボタン1からの相対位置を設定 layout.putConstraint(SpringLayout.NORTH, button2, 10, SpringLayout.NORTH, button1); layout.putConstraint(SpringLayout.WEST, button2, 10, SpringLayout.WEST, button1); // ボタン3はボタン1からの相対位置を設定 layout.putConstraint(SpringLayout.NORTH, button3, 50, SpringLayout.NORTH, button1); layout.putConstraint(SpringLayout.WEST, button3, 100, SpringLayout.WEST, button1); // ボタン4はボタン3からの相対位置を設定 layout.putConstraint(SpringLayout.NORTH, button4, 50, SpringLayout.NORTH, button3); layout.putConstraint(SpringLayout.WEST, button4, 50, SpringLayout.WEST, button3); // パネルにボタンを配置 panelBase.add(button1); panelBase.add(button2); panelBase.add(button3); panelBase.add(button4); // ベースパネルを追加 getContentPane().add(panelBase, BorderLayout.CENTER); } }
2016/05/13 Windows 8.1 + Java 7 環境で全体を見直し 2007/12/07 新規作成