import java.awt.Button; import java.awt.Frame; import java.awt.GridBagConstraints; import java.awt.Panel; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; public class LayoutTest { public LayoutTest() { Frame frame = new Frame("LayoutTest"); frame.setBounds(100, 100, 400, 400); frame.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(1); } }); System.out.println("construct GridBag"); GridBagConstraints con = new GridBagConstraints(); MyGridBagLayout gridbag = new MyGridBagLayout(); frame.setLayout(gridbag); con.fill = GridBagConstraints.BOTH; con.weightx = 1.0; Button button = new Button("Button1"); gridbag.setConstraints(button, con); System.out.println("Frame#add(Button1)"); frame.add(button); con.gridwidth = GridBagConstraints.RELATIVE; button = new Button("Button2"); gridbag.setConstraints(button, con); System.out.println("Frame#add(Button2)"); frame.add(button); con.gridwidth = GridBagConstraints.REMAINDER; button = new Button("Button3"); gridbag.setConstraints(button, con); System.out.println("Frame#add(Button3)"); frame.add(button); frame.setVisible(true); } public static void main(String[] args) { new LayoutTest(); } }