I am trying to prevent the GridLayout in a JPanel from filling the cells entirely and ignoring any setSize of the components
i am using this code:
import javax.swing.*;
import java.awt.*;
public class GrideComponents{
public static void main(String[] args) {
JFrame frame = new JFrame("Laying Out Components in a Grid");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel panel = new JPanel(new GridLayout(5,2,0,0));
panel.add(new JLabel("Enter name"));
JTextField a = new JTextField(5);
a.setSize(10, 10);
panel.add(a);
panel.add(new JLabel("Enter Roll"));
panel.add(new JTextField(3));
panel.add(new JLabel("Enter Class"));
panel.add(new JTextField(3));
panel.add(new JLabel("Enter Total Marks"));
panel.add(new JTextField(3));
panel.add(new JButton("Ok"));
panel.add(new JButton("Cancel"));
frame.add(panel);
frame.setSize(400,400);
frame.setVisible(true);
}
}
And every component is filling the gris cell instead of being in the size specified.
Thanks