How to use GridBagConstraints to layout two components in the same line with Java

Java 8Object Oriented ProgrammingProgramming

To align two components in the same line, you need to set the contrainsts of the GridBagConstraints properly. Let’s say we have two components in panel1. Set the contraints using Insets as well −

panel1.add(checkBox1, new GridBagConstraints(0, 0, 1, 1, 0.0, 0.0,
   GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL, new Insets(0, 0, 0, 0), 0, 0));
panel1.add(checkBox2, new GridBagConstraints(1, 0, 1, 1, 2.0, 0.0,
   GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL, new Insets(0, 0, 0, 0), 0, 0));

The following is an example to set two components in the same line −

Example

package my;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.Insets;
import javax.swing.JCheckBox;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class SwingDemo {
   public static void main(String[] args) {
      JFrame frame = new JFrame();
      frame.setDefaultCloseOperation(frame.EXIT_ON_CLOSE);
      frame.setSize(550, 300);
      JPanel panel1 = new JPanel(new GridBagLayout());
      JCheckBox checkBox1 = new JCheckBox("Undergraduate");
      JCheckBox checkBox2 = new JCheckBox("Graduate");
      panel1.add(checkBox1, new GridBagConstraints(0, 0, 1, 1, 0.0, 0.0,
         GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL, new Insets(0,0, 0, 0), 0, 0));
      panel1.add(checkBox2, new GridBagConstraints(1, 0, 1, 1, 2.0, 0.0,
         GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL, new Insets(0,0, 0, 0), 0, 0));
      frame.add(panel1);
      frame.setVisible(true);
   }
}

Output


raja
Published on 31-May-2019 12:06:34
Advertisements