Java program to create three vertical columns with equal number of buttons in GridLayout



Here, use GridLayout with some buttons in a Panel −

JPanel btnPanel = new JPanel(new GridLayout(5, 2, 5, 5)) -

Now, set the buttons −

btnPanel.add(new JButton("First Button"));
btnPanel.add(new JButton("Second Button"));
btnPanel.add(new JButton("Third Button"));
btnPanel.add(new JButton("Fourth Button"));
btnPanel.add(new JButton("Fifth Button"));
btnPanel.add(new JButton("Sixth Button"));
btnPanel.add(new JButton("Seventh Button"));
btnPanel.add(new JButton("Eighth Button"));
btnPanel.add(new JButton("Ninth Button"));
btnPanel.add(new JButton("Tenth Button"));
btnPanel.add(new JButton("Eleventh Button"));
btnPanel.add(new JButton("Twelfth Button"));

The following is an example to create three vertical columns with equal number of buttons −

Example

package my;
import java.awt.BorderLayout;
import java.awt.GridBagLayout;
import java.awt.GridLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
public class SwingDemo {
   public static void main(String[] args) {
      JPanel panel = new JPanel(new BorderLayout());
      panel.setBorder(new EmptyBorder(2, 3, 2, 3));
      JPanel layout = new JPanel(new GridBagLayout());
      layout.setBorder(new EmptyBorder(5, 5, 5, 5));
      JPanel btnPanel = new JPanel(new GridLayout(5, 2, 5, 5));
      btnPanel.add(new JButton("First Button"));
      btnPanel.add(new JButton("Second Button"));
      btnPanel.add(new JButton("Third Button"));
      btnPanel.add(new JButton("Fourth Button"));
      btnPanel.add(new JButton("Fifth Button"));
      btnPanel.add(new JButton("Sixth Button"));
      btnPanel.add(new JButton("Seventh Button"));
      btnPanel.add(new JButton("Eighth Button"));
      btnPanel.add(new JButton("Ninth Button"));
      btnPanel.add(new JButton("Tenth Button"));
      btnPanel.add(new JButton("Eleventh Button"));
      btnPanel.add(new JButton("Twelfth Button"));
      layout.add(btnPanel);
      panel.add(layout, BorderLayout.EAST);
      JFrame frame = new JFrame("Demo");
      frame.add(panel);
      frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
      frame.setLocationByPlatform(true);
      frame.setSize(500, 400);
      frame.setVisible(true);
   }
}

Output


Advertisements