<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://www.jexp.ru/index.php?action=history&amp;feed=atom&amp;title=Java_Tutorial%2FSwing%2FGridBagConstraints</id>
		<title>Java Tutorial/Swing/GridBagConstraints - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://www.jexp.ru/index.php?action=history&amp;feed=atom&amp;title=Java_Tutorial%2FSwing%2FGridBagConstraints"/>
		<link rel="alternate" type="text/html" href="http://www.jexp.ru/index.php?title=Java_Tutorial/Swing/GridBagConstraints&amp;action=history"/>
		<updated>2026-04-22T09:52:37Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://www.jexp.ru/index.php?title=Java_Tutorial/Swing/GridBagConstraints&amp;diff=3815&amp;oldid=prev</id>
		<title> в 17:44, 31 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://www.jexp.ru/index.php?title=Java_Tutorial/Swing/GridBagConstraints&amp;diff=3815&amp;oldid=prev"/>
				<updated>2010-05-31T17:44:27Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 17:44, 31 мая 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
			</entry>

	<entry>
		<id>http://www.jexp.ru/index.php?title=Java_Tutorial/Swing/GridBagConstraints&amp;diff=3816&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://www.jexp.ru/index.php?title=Java_Tutorial/Swing/GridBagConstraints&amp;diff=3816&amp;oldid=prev"/>
				<updated>2010-05-31T15:31:25Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==  Adding Components with a Relative X Position ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.awt.Container;&lt;br /&gt;
import java.awt.GridBagConstraints;&lt;br /&gt;
import java.awt.GridBagLayout;&lt;br /&gt;
import javax.swing.JButton;&lt;br /&gt;
import javax.swing.JFrame;&lt;br /&gt;
public class RelativeX {&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    JFrame f = new JFrame();&lt;br /&gt;
    f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);&lt;br /&gt;
    Container pane = f.getContentPane();&lt;br /&gt;
    pane.setLayout(new GridBagLayout());&lt;br /&gt;
    GridBagConstraints gbc = new GridBagConstraints();&lt;br /&gt;
    gbc.gridy = 0;&lt;br /&gt;
    pane.add(new JButton(&amp;quot;First row&amp;quot;), gbc);&lt;br /&gt;
    gbc.gridx = GridBagConstraints.RELATIVE;&lt;br /&gt;
    gbc.gridy = 1;&lt;br /&gt;
    pane.add(new JButton(&amp;quot;Second row, first column&amp;quot;), gbc);&lt;br /&gt;
    pane.add(new JButton(&amp;quot;Second row, second column&amp;quot;), gbc);&lt;br /&gt;
    pane.add(new JButton(&amp;quot;Second row, third column&amp;quot;), gbc);&lt;br /&gt;
    gbc.gridy = 2;&lt;br /&gt;
    pane.add(new JButton(&amp;quot;Third row&amp;quot;), gbc);&lt;br /&gt;
    f.setSize(600, 300);&lt;br /&gt;
    f.setVisible(true);&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Adding Components with a Relative Y Position ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.awt.Container;&lt;br /&gt;
import java.awt.GridBagConstraints;&lt;br /&gt;
import java.awt.GridBagLayout;&lt;br /&gt;
import javax.swing.JButton;&lt;br /&gt;
import javax.swing.JFrame;&lt;br /&gt;
public class RelativeY {&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    JFrame f = new JFrame();&lt;br /&gt;
    f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);&lt;br /&gt;
    Container pane = f.getContentPane();&lt;br /&gt;
    pane.setLayout(new GridBagLayout());&lt;br /&gt;
    GridBagConstraints gbc = new GridBagConstraints();&lt;br /&gt;
    gbc.gridx = 0;&lt;br /&gt;
    pane.add(new JButton(&amp;quot;First column&amp;quot;), gbc);&lt;br /&gt;
    gbc.gridx = 1;&lt;br /&gt;
    gbc.gridy = GridBagConstraints.RELATIVE;&lt;br /&gt;
    pane.add(new JButton(&amp;quot;Second column, first row&amp;quot;), gbc);&lt;br /&gt;
    pane.add(new JButton(&amp;quot;Second column, second row&amp;quot;), gbc);&lt;br /&gt;
    pane.add(new JButton(&amp;quot;Second column, third row&amp;quot;), gbc);&lt;br /&gt;
    gbc.gridx = 2;&lt;br /&gt;
    pane.add(new JButton(&amp;quot;Third column&amp;quot;), gbc);&lt;br /&gt;
    f.setSize(500, 300);&lt;br /&gt;
    f.setVisible(true);&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Adding Components with Relative X and Y Coordinates ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.awt.Container;&lt;br /&gt;
import java.awt.GridBagConstraints;&lt;br /&gt;
import java.awt.GridBagLayout;&lt;br /&gt;
import javax.swing.JButton;&lt;br /&gt;
import javax.swing.JFrame;&lt;br /&gt;
public class RelativeXY {&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    JFrame f = new JFrame();&lt;br /&gt;
    f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);&lt;br /&gt;
    Container pane = f.getContentPane();&lt;br /&gt;
    pane.setLayout(new GridBagLayout());&lt;br /&gt;
    GridBagConstraints gbc = new GridBagConstraints();&lt;br /&gt;
    gbc.gridx = 1;&lt;br /&gt;
    gbc.gridy = GridBagConstraints.RELATIVE;&lt;br /&gt;
    pane.add(new JButton(&amp;quot;First row, first column&amp;quot;), gbc);&lt;br /&gt;
    pane.add(new JButton(&amp;quot;Second row&amp;quot;), gbc);&lt;br /&gt;
    pane.add(new JButton(&amp;quot;Third row&amp;quot;), gbc);&lt;br /&gt;
    gbc.gridx = GridBagConstraints.RELATIVE;&lt;br /&gt;
    pane.add(new JButton(&amp;quot;First row, second column&amp;quot;), gbc);&lt;br /&gt;
    f.setSize(500, 300);&lt;br /&gt;
    f.setVisible(true);&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  A GridBagLayout Example: weightx, weighty ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.awt.Button;&lt;br /&gt;
import java.awt.Frame;&lt;br /&gt;
import java.awt.GridBagConstraints;&lt;br /&gt;
import java.awt.GridBagLayout;&lt;br /&gt;
import javax.swing.JPanel;&lt;br /&gt;
public class Main extends JPanel {&lt;br /&gt;
  protected void makebutton(String name, GridBagLayout gridbag, GridBagConstraints c) {&lt;br /&gt;
    Button button = new Button(name);&lt;br /&gt;
    gridbag.setConstraints(button, c);&lt;br /&gt;
    add(button);&lt;br /&gt;
  }&lt;br /&gt;
  public Main() {&lt;br /&gt;
    GridBagLayout gridbag = new GridBagLayout();&lt;br /&gt;
    GridBagConstraints c = new GridBagConstraints();&lt;br /&gt;
    setLayout(gridbag);&lt;br /&gt;
    c.weightx = 1.0;&lt;br /&gt;
    c.weighty = 1.0;&lt;br /&gt;
    makebutton(&amp;quot;Button 1&amp;quot;, gridbag, c);&lt;br /&gt;
    c.fill = GridBagConstraints.BOTH;&lt;br /&gt;
    makebutton(&amp;quot;Button 2&amp;quot;, gridbag, c);&lt;br /&gt;
  }&lt;br /&gt;
  public static void main(String args[]) {&lt;br /&gt;
    Frame f = new Frame();&lt;br /&gt;
    JPanel mgb = new Main();&lt;br /&gt;
    f.add(&amp;quot;Center&amp;quot;, mgb);&lt;br /&gt;
    f.pack();&lt;br /&gt;
    f.setSize(300, 300);&lt;br /&gt;
    f.setVisible(true);&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  A Simple Application That Uses GridBagConstraints.WEST ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.awt.GridBagConstraints;&lt;br /&gt;
import java.awt.GridBagLayout;&lt;br /&gt;
import javax.swing.JFrame;&lt;br /&gt;
import javax.swing.JLabel;&lt;br /&gt;
import javax.swing.JPanel;&lt;br /&gt;
import javax.swing.JTextField;&lt;br /&gt;
public class GridBagConstraintsSimplePanel extends JPanel {&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    JFrame f = new JFrame();&lt;br /&gt;
    f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);&lt;br /&gt;
    f.getContentPane().add(new GridBagConstraintsSimplePanel());&lt;br /&gt;
    f.setSize(400, 300);&lt;br /&gt;
    f.setVisible(true);&lt;br /&gt;
  }&lt;br /&gt;
  public GridBagConstraintsSimplePanel() {&lt;br /&gt;
    super();&lt;br /&gt;
    GridBagConstraints constraints = new GridBagConstraints();&lt;br /&gt;
    GridBagLayout layout = new GridBagLayout();&lt;br /&gt;
    setLayout(layout);&lt;br /&gt;
    constraints.anchor = GridBagConstraints.WEST;&lt;br /&gt;
    constraints.gridy = 0;&lt;br /&gt;
    JLabel label = new JLabel(&amp;quot;First name:&amp;quot;);&lt;br /&gt;
    add(label, constraints);&lt;br /&gt;
    JTextField tf = new JTextField(8);&lt;br /&gt;
    add(tf, constraints);&lt;br /&gt;
    label = new JLabel(&amp;quot;Last name:&amp;quot;);&lt;br /&gt;
    add(label, constraints);&lt;br /&gt;
    tf = new JTextField(8);&lt;br /&gt;
    add(tf, constraints);&lt;br /&gt;
    constraints.gridy = 1;&lt;br /&gt;
    label = new JLabel(&amp;quot;Address:&amp;quot;);&lt;br /&gt;
    add(label, constraints);&lt;br /&gt;
    tf = new JTextField(10);&lt;br /&gt;
    add(tf, constraints);&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Effects of the fill Constraint ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.awt.Container;&lt;br /&gt;
import java.awt.GridBagConstraints;&lt;br /&gt;
import java.awt.GridBagLayout;&lt;br /&gt;
import javax.swing.JButton;&lt;br /&gt;
import javax.swing.JFrame;&lt;br /&gt;
public class GridBagLayoutFill {&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    JFrame f = new JFrame();&lt;br /&gt;
    f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);&lt;br /&gt;
    Container pane = f.getContentPane();&lt;br /&gt;
    pane.setLayout(new GridBagLayout());&lt;br /&gt;
    GridBagConstraints gbc = new GridBagConstraints();&lt;br /&gt;
    gbc.gridx = 0;&lt;br /&gt;
    gbc.gridy = GridBagConstraints.RELATIVE;&lt;br /&gt;
    pane.add(new JButton(&amp;quot;This button&amp;quot;s preferred width &amp;quot; + &amp;quot;is large because its text is long&amp;quot;),&lt;br /&gt;
        gbc);&lt;br /&gt;
    pane.add(new JButton(&amp;quot;Small centered button&amp;quot;), gbc);&lt;br /&gt;
    gbc.fill = GridBagConstraints.HORIZONTAL;&lt;br /&gt;
    pane.add(new JButton(&amp;quot;Expands to fill column width&amp;quot;), gbc);&lt;br /&gt;
    f.setSize(400, 300);&lt;br /&gt;
    f.setVisible(true);&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Effects of the gridheight Constraint ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.awt.Container;&lt;br /&gt;
import java.awt.GridBagConstraints;&lt;br /&gt;
import java.awt.GridBagLayout;&lt;br /&gt;
import javax.swing.JButton;&lt;br /&gt;
import javax.swing.JLabel;&lt;br /&gt;
import javax.swing.JFrame;&lt;br /&gt;
public class GridBagLayoutGridHeight {&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    JFrame f = new JFrame();&lt;br /&gt;
    f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);&lt;br /&gt;
    Container pane = f.getContentPane();&lt;br /&gt;
    pane.setLayout(new GridBagLayout());&lt;br /&gt;
    GridBagConstraints gbc = new GridBagConstraints();&lt;br /&gt;
    pane.add(new JLabel(&amp;quot;First row, first column&amp;quot;), gbc);&lt;br /&gt;
    pane.add(new JLabel(&amp;quot;First row, second column&amp;quot;), gbc);&lt;br /&gt;
    gbc.gridheight = GridBagConstraints.REMAINDER;&lt;br /&gt;
    gbc.fill = GridBagConstraints.VERTICAL;&lt;br /&gt;
    pane.add(new JLabel(&amp;quot;First row, third column&amp;quot;), gbc);&lt;br /&gt;
    gbc.gridx = 0;&lt;br /&gt;
    gbc.gridheight = 1;&lt;br /&gt;
    gbc.fill = GridBagConstraints.NONE;&lt;br /&gt;
    pane.add(new JButton(&amp;quot;Second row&amp;quot;), gbc);&lt;br /&gt;
    pane.add(new JButton(&amp;quot;Third row&amp;quot;), gbc);&lt;br /&gt;
    f.setSize(600, 300);&lt;br /&gt;
    f.setVisible(true);&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Effects of the gridwidth Constraint ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.awt.Container;&lt;br /&gt;
import java.awt.GridBagConstraints;&lt;br /&gt;
import java.awt.GridBagLayout;&lt;br /&gt;
import javax.swing.JButton;&lt;br /&gt;
import javax.swing.JFrame;&lt;br /&gt;
public class GridBagLayoutColumnSpan {&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    JFrame f = new JFrame();&lt;br /&gt;
    f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);&lt;br /&gt;
    Container pane = f.getContentPane();&lt;br /&gt;
    pane.setLayout(new GridBagLayout());&lt;br /&gt;
    GridBagConstraints gbc = new GridBagConstraints();&lt;br /&gt;
    gbc.gridx = 1;&lt;br /&gt;
    gbc.gridy = GridBagConstraints.RELATIVE;&lt;br /&gt;
    pane.add(new JButton(&amp;quot;First row, first column&amp;quot;), gbc);&lt;br /&gt;
    pane.add(new JButton(&amp;quot;Second row&amp;quot;), gbc);&lt;br /&gt;
    gbc.gridwidth = 2;&lt;br /&gt;
    pane.add(new JButton(&amp;quot;Third row, spans two columns&amp;quot;), gbc);&lt;br /&gt;
    gbc.gridwidth = 1;&lt;br /&gt;
    gbc.gridx = GridBagConstraints.RELATIVE;&lt;br /&gt;
    pane.add(new JButton(&amp;quot;First row, second column&amp;quot;), gbc);&lt;br /&gt;
    f.setSize(400, 300);&lt;br /&gt;
    f.setVisible(true);&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Filling the Entire Column ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.awt.Container;&lt;br /&gt;
import java.awt.GridBagConstraints;&lt;br /&gt;
import java.awt.GridBagLayout;&lt;br /&gt;
import javax.swing.JButton;&lt;br /&gt;
import javax.swing.JFrame;&lt;br /&gt;
public class GridBagLayoutColumnSpanHORIZONTAL {&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    JFrame f = new JFrame();&lt;br /&gt;
    f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);&lt;br /&gt;
    Container pane = f.getContentPane();&lt;br /&gt;
    pane.setLayout(new GridBagLayout());&lt;br /&gt;
    GridBagConstraints gbc = new GridBagConstraints();&lt;br /&gt;
    gbc.gridx = 1;&lt;br /&gt;
    gbc.gridy = GridBagConstraints.RELATIVE;&lt;br /&gt;
    pane.add(new JButton(&amp;quot;First row, first column&amp;quot;), gbc);&lt;br /&gt;
    pane.add(new JButton(&amp;quot;Second row&amp;quot;), gbc);&lt;br /&gt;
    gbc.gridwidth = 2;&lt;br /&gt;
    gbc.fill = GridBagConstraints.HORIZONTAL;&lt;br /&gt;
    pane.add(new JButton(&amp;quot;Third row, spans two columns&amp;quot;), gbc);&lt;br /&gt;
    gbc.gridwidth = 1;&lt;br /&gt;
    gbc.fill = GridBagConstraints.NONE;&lt;br /&gt;
    gbc.gridx = GridBagConstraints.RELATIVE;&lt;br /&gt;
    pane.add(new JButton(&amp;quot;First row, second column&amp;quot;), gbc);&lt;br /&gt;
    f.setSize(400, 300);&lt;br /&gt;
    f.setVisible(true);&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Use GridBagLayout to layout RadioButtons ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.awt.GridBagConstraints;&lt;br /&gt;
import java.awt.GridBagLayout;&lt;br /&gt;
import java.awt.Insets;&lt;br /&gt;
import javax.swing.BorderFactory;&lt;br /&gt;
import javax.swing.Box;&lt;br /&gt;
import javax.swing.ButtonGroup;&lt;br /&gt;
import javax.swing.JButton;&lt;br /&gt;
import javax.swing.JCheckBox;&lt;br /&gt;
import javax.swing.JComponent;&lt;br /&gt;
import javax.swing.JFrame;&lt;br /&gt;
import javax.swing.JLabel;&lt;br /&gt;
import javax.swing.JPanel;&lt;br /&gt;
import javax.swing.JRadioButton;&lt;br /&gt;
import javax.swing.JTextField;&lt;br /&gt;
public class PizzaGridBagLayout extends JFrame {&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    new PizzaGridBagLayout();&lt;br /&gt;
  }&lt;br /&gt;
  JTextField name = new JTextField(20), phone = new JTextField(10), address = new JTextField(20);&lt;br /&gt;
  JRadioButton small = new JRadioButton(&amp;quot;Small&amp;quot;), medium = new JRadioButton(&amp;quot;Medium&amp;quot;),&lt;br /&gt;
      large = new JRadioButton(&amp;quot;Large&amp;quot;), thick = new JRadioButton(&amp;quot;Thick&amp;quot;),&lt;br /&gt;
      thin = new JRadioButton(&amp;quot;Thin&amp;quot;);&lt;br /&gt;
  JCheckBox pepperoni = new JCheckBox(&amp;quot;Pepperoni&amp;quot;), mushrooms = new JCheckBox(&amp;quot;Mushrooms&amp;quot;),&lt;br /&gt;
      anchovies = new JCheckBox(&amp;quot;Anchovies&amp;quot;);&lt;br /&gt;
  JButton okButton = new JButton(&amp;quot;OK&amp;quot;), closeButton = new JButton(&amp;quot;Close&amp;quot;);&lt;br /&gt;
  public PizzaGridBagLayout() {&lt;br /&gt;
    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);&lt;br /&gt;
    JPanel panel1 = new JPanel();&lt;br /&gt;
    panel1.setLayout(new GridBagLayout());&lt;br /&gt;
    addItem(panel1, new JLabel(&amp;quot;Name:&amp;quot;), 0, 0, 1, 1, GridBagConstraints.EAST);&lt;br /&gt;
    addItem(panel1, new JLabel(&amp;quot;Phone:&amp;quot;), 0, 1, 1, 1, GridBagConstraints.EAST);&lt;br /&gt;
    addItem(panel1, new JLabel(&amp;quot;Address:&amp;quot;), 0, 2, 1, 1, GridBagConstraints.EAST);&lt;br /&gt;
    addItem(panel1, name, 1, 0, 2, 1, GridBagConstraints.WEST);&lt;br /&gt;
    addItem(panel1, phone, 1, 1, 1, 1, GridBagConstraints.WEST);&lt;br /&gt;
    addItem(panel1, address, 1, 2, 2, 1, GridBagConstraints.WEST);&lt;br /&gt;
    Box sizeBox = Box.createVerticalBox();&lt;br /&gt;
    ButtonGroup sizeGroup = new ButtonGroup();&lt;br /&gt;
    sizeGroup.add(small);&lt;br /&gt;
    sizeGroup.add(medium);&lt;br /&gt;
    sizeGroup.add(large);&lt;br /&gt;
    sizeBox.add(small);&lt;br /&gt;
    sizeBox.add(medium);&lt;br /&gt;
    sizeBox.add(large);&lt;br /&gt;
    sizeBox.setBorder(BorderFactory.createTitledBorder(&amp;quot;Size&amp;quot;));&lt;br /&gt;
    addItem(panel1, sizeBox, 0, 3, 1, 1, GridBagConstraints.NORTH);&lt;br /&gt;
    Box styleBox = Box.createVerticalBox();&lt;br /&gt;
    ButtonGroup styleGroup = new ButtonGroup();&lt;br /&gt;
    styleGroup.add(thin);&lt;br /&gt;
    styleGroup.add(thick);&lt;br /&gt;
    styleBox.add(thin);&lt;br /&gt;
    styleBox.add(thick);&lt;br /&gt;
    styleBox.setBorder(BorderFactory.&lt;br /&gt;
    createTitledBorder(&amp;quot;Style&amp;quot;));&lt;br /&gt;
    addItem(panel1, styleBox, 1, 3, 1, 1, GridBagConstraints.NORTH);&lt;br /&gt;
    Box topBox = Box.createVerticalBox();&lt;br /&gt;
    ButtonGroup topGroup = new ButtonGroup();&lt;br /&gt;
    topGroup.add(pepperoni);&lt;br /&gt;
    topGroup.add(mushrooms);&lt;br /&gt;
    topGroup.add(anchovies);&lt;br /&gt;
    topBox.add(pepperoni);&lt;br /&gt;
    topBox.add(mushrooms);&lt;br /&gt;
    topBox.add(anchovies);&lt;br /&gt;
    topBox.setBorder(BorderFactory.createTitledBorder(&amp;quot;Toppings&amp;quot;));&lt;br /&gt;
    addItem(panel1, topBox, 2, 3, 1, 1, GridBagConstraints.NORTH);&lt;br /&gt;
    Box buttonBox = Box.createHorizontalBox();&lt;br /&gt;
    buttonBox.add(okButton);&lt;br /&gt;
    buttonBox.add(Box.createHorizontalStrut(20));&lt;br /&gt;
    buttonBox.add(closeButton);&lt;br /&gt;
    addItem(panel1, buttonBox, 2, 4, 1, 1, GridBagConstraints.NORTH);&lt;br /&gt;
    this.add(panel1);&lt;br /&gt;
    this.pack();&lt;br /&gt;
    this.setVisible(true);&lt;br /&gt;
  }&lt;br /&gt;
  private void addItem(JPanel p, JComponent c, int x, int y, int width, int height, int align) {&lt;br /&gt;
    GridBagConstraints gc = new GridBagConstraints();&lt;br /&gt;
    gc.gridx = x;&lt;br /&gt;
    gc.gridy = y;&lt;br /&gt;
    gc.gridwidth = width;&lt;br /&gt;
    gc.gridheight = height;&lt;br /&gt;
    gc.weightx = 100.0;&lt;br /&gt;
    gc.weighty = 100.0;&lt;br /&gt;
    gc.insets = new Insets(5, 5, 5, 5);&lt;br /&gt;
    gc.anchor = align;&lt;br /&gt;
    gc.fill = GridBagConstraints.NONE;&lt;br /&gt;
    p.add(c, gc);&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Using GridBagConstraints ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;OL&amp;gt;&amp;lt;LI&amp;gt;GridBagConstraints specifies how to display a specific component.&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;Every component added to a GridBagLayout container should have a GridBagConstraints object associated with it.&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;Without GridBagConstraints, the GridBagLayout is a blank slate.&amp;lt;/LI&amp;gt;&amp;lt;/OL&amp;gt;&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.awt.ruponent;&lt;br /&gt;
import java.awt.Container;&lt;br /&gt;
import java.awt.GridBagConstraints;&lt;br /&gt;
import java.awt.GridBagLayout;&lt;br /&gt;
import java.awt.Insets;&lt;br /&gt;
import javax.swing.JButton;&lt;br /&gt;
import javax.swing.JFrame;&lt;br /&gt;
public class GridBagButtons {&lt;br /&gt;
  private static final Insets insets = new Insets(0, 0, 0, 0);&lt;br /&gt;
  public static void main(final String args[]) {&lt;br /&gt;
    final JFrame frame = new JFrame(&amp;quot;GridBagLayout&amp;quot;);&lt;br /&gt;
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);&lt;br /&gt;
    frame.setLayout(new GridBagLayout());&lt;br /&gt;
    JButton button;&lt;br /&gt;
    // Row One - Three Buttons&lt;br /&gt;
    button = new JButton(&amp;quot;One&amp;quot;);&lt;br /&gt;
    addComponent(frame, button, 0, 0, 1, 1, GridBagConstraints.CENTER, GridBagConstraints.BOTH);&lt;br /&gt;
    button = new JButton(&amp;quot;Two&amp;quot;);&lt;br /&gt;
    addComponent(frame, button, 1, 0, 1, 1, GridBagConstraints.CENTER, GridBagConstraints.BOTH);&lt;br /&gt;
    button = new JButton(&amp;quot;Three&amp;quot;);&lt;br /&gt;
    addComponent(frame, button, 2, 0, 1, 1, GridBagConstraints.CENTER, GridBagConstraints.BOTH);&lt;br /&gt;
    // Row Two - Two Buttons&lt;br /&gt;
    button = new JButton(&amp;quot;Four&amp;quot;);&lt;br /&gt;
    addComponent(frame, button, 0, 1, 2, 1, GridBagConstraints.CENTER, GridBagConstraints.BOTH);&lt;br /&gt;
    button = new JButton(&amp;quot;Five&amp;quot;);&lt;br /&gt;
    addComponent(frame, button, 2, 1, 1, 2, GridBagConstraints.CENTER, GridBagConstraints.BOTH);&lt;br /&gt;
    // Row Three - Two Buttons&lt;br /&gt;
    button = new JButton(&amp;quot;Six&amp;quot;);&lt;br /&gt;
    addComponent(frame, button, 0, 2, 1, 1, GridBagConstraints.CENTER, GridBagConstraints.BOTH);&lt;br /&gt;
    button = new JButton(&amp;quot;Seven&amp;quot;);&lt;br /&gt;
    addComponent(frame, button, 1, 2, 1, 1, GridBagConstraints.CENTER, GridBagConstraints.BOTH);&lt;br /&gt;
    frame.setSize(500, 200);&lt;br /&gt;
    frame.setVisible(true);&lt;br /&gt;
  }&lt;br /&gt;
  private static void addComponent(Container container, Component component, int gridx, int gridy,&lt;br /&gt;
      int gridwidth, int gridheight, int anchor, int fill) {&lt;br /&gt;
    GridBagConstraints gbc = new GridBagConstraints(gridx, gridy, gridwidth, gridheight, 1.0, 1.0,&lt;br /&gt;
        anchor, fill, insets, 0, 0);&lt;br /&gt;
    container.add(component, gbc);&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Using the REMAINDER Value for a Width ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.awt.Container;&lt;br /&gt;
import java.awt.GridBagConstraints;&lt;br /&gt;
import java.awt.GridBagLayout;&lt;br /&gt;
import javax.swing.JButton;&lt;br /&gt;
import javax.swing.JFrame;&lt;br /&gt;
public class GridBagLayoutRemainder {&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    JFrame f = new JFrame();&lt;br /&gt;
    f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);&lt;br /&gt;
    Container pane = f.getContentPane();&lt;br /&gt;
    pane.setLayout(new GridBagLayout());&lt;br /&gt;
    GridBagConstraints gbc = new GridBagConstraints();&lt;br /&gt;
    pane.add(new JButton(&amp;quot;First row, first column&amp;quot;), gbc);&lt;br /&gt;
    pane.add(new JButton(&amp;quot;First row, second column&amp;quot;), gbc);&lt;br /&gt;
    pane.add(new JButton(&amp;quot;First row, third column&amp;quot;), gbc);&lt;br /&gt;
    gbc.gridx = 0;&lt;br /&gt;
    pane.add(new JButton(&amp;quot;Second row&amp;quot;), gbc);&lt;br /&gt;
    gbc.gridwidth = GridBagConstraints.REMAINDER;&lt;br /&gt;
    gbc.fill = GridBagConstraints.HORIZONTAL;&lt;br /&gt;
    pane.add(new JButton(&amp;quot;Third row, gridwidth set to REMAINDER&amp;quot;), gbc);&lt;br /&gt;
    f.setSize(600, 300);&lt;br /&gt;
    f.setVisible(true);&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>