Tu peux essayer avec un "button.setPreferedSize(new Dimension(150,25))" mais je ne suis pas sur que ça va fonctionner.
Sinon, le plus simple me semble de rajouter un jpanel intermédiaire entre ton panel avec le GridLayout et le bouton.
Remplacer :
JButton b = new Jbutton("Press me" );
panel.add(b);
|
par :
JButton b = new Jbutton("Press me" );
JPanel p = new JPanel();
p.add(b);
panel.add(p);
|
---------------
Un ordinateur sert à résoudre des problèmes qui n'existaient pas avant son invention.