Comment arrêter un component swing jtextfield de se re-dimensionnés GridLayout

Je suis entrain de créer une interface graphique avec la grille de mise en page. J'ai ajouté le JTextFields, JButtons et tout à elle DIRECTEMENT. Pour un exemple, comme ça,

JButton b1 = new JButton("Hello"):
JButton b2 = new JButton("Bye");
JTextField t1 = new JTextField(10);
JTextField t2 = new JTextField(10);

GridLayout grid = new GridLayout(2,2,2,2);

JPanel panel = new JPanel();
panel.setLayout(grid);
panel.add(b1);
panel.add(t1);
panel.add(b2);
panel.add(t2);

Ici, si l'utilisateur redimensionne la fenêtre tout semble très grande. Le seul autre moyen que je connaisse pour éviter de les obtenir ces est l'ajout de tous de tous et de tout séparer un Composite qui a FlowLayout. Mais c'est pas pratique parce que si il y a 20 trucs, il y aura 20 JPanels. J'ai essayé de réglage de la taille maximale, la taille minimum et tout, et ils n'ont pas changer tout. S'il vous plaît aider.

vous devez utiliser plus complexe GridBagLayout avec des contraintes ou désactiver le redimensionnement.
GroupLayout serait un meilleur ajustement pour ce. L'approche naturelle de GridLayout est de faire tout de la même taille.
Ay, GridBag Mise en page serait la meilleure option, mais personnellement, je n'aime pas jouer avec ça. C'est pourquoi je vais toujours pour les autres mises en page. Cependant, si je ne pouvais pas résoudre ce problème en suivant les réponses, ce serait ma seule option.

OriginalL'auteur PeakGen | 2012-06-08