Getting the Number of Rows and Columns of Cells in a GridBagLayout
import java.awt.Container;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
public class Main {
public static void main(String[] argv) throws Exception {
JFrame frame = new JFrame();
Container container = frame.getContentPane();
GridBagLayout gbl = new GridBagLayout();
container.setLayout(gbl);
GridBagConstraints gbc = new GridBagConstraints();
JButton component1 = new JButton("a");
JButton component2 = new JButton("b");
gbc.gridx = 1;
gbc.gridy = 1;
gbl.setConstraints(component1, gbc);
container.add(component1);
gbc.gridx = 0;
gbc.gridy = 0;
gbl.setConstraints(component2, gbc);
container.add(component2);
container.add(component1);
container.add(component2);
frame.pack();
frame.setVisible(true);
gbl.layoutContainer(container);
int[][] dim = gbl.getLayoutDimensions();
int cols = dim[0].length;
int rows = dim[1].length;
System.out.println(cols);
System.out.println(rows);
}
}
Related examples in the same category