Originariamente inviato da andbin
È lo stesso problema del BorderLayout (vedi risposta sotto). GridLayout non usa/rispetta il "preferred size" dei componenti e quindi fa occupare ai componenti tutto lo spazio che lui stabilisce in base al numero di righe/colonne.

No, BorderLayout fa "occupare" ai componenti tutto lo spazio nelle 5 aree. Per dirla in altri termini, BorderLayout non usa/rispetta il "preferred size" dei componenti.

Se vuoi continuare ad usare un BorderLayout, allora in SOUTH metti un Panel che ha ad esempio un FlowLayout:
codice:
JPanel panel = new JPanel (new FlowLayout (FlowLayout.CENTER));
panel.add (unPulsante);

add (panel, BorderLayout.SOUTH);
Altrimenti cambia layout.

setResizable(boolean resizable)
Vedi documentazione javadoc.

A impostare la dimensione "preferita"

A tal proposito, leggi: http://java.sun.com/docs/books/tutor.../problems.html
ti ringrazio per i consigli..quali sono i layout che rispettano la preferredsize? flowlayout, poi?