2011-09-13 16 views
6

Mam dwa numery JButton z tekstem "Ok" i "Anuluj". Używam GridBagLayout, aby wyrównać je w JDialog. Ustawiłem kotwicę na GridBagConstraints.CENTER. Ze względu na różnice w liczbie znaków w tekstach "Ok" i "Anuluj", przyciski mają różne rozmiary. Jak prawidłowo ustawić je tak, aby każdy z nich miał taki sam rozmiar. Próbowałem następujące, ale bezskutecznie.Ustaw 2 JButtons równe rozmiarowi

okayButton.setSize(cancelButton.getSize()); 
+2

tylko dla podkreślenia: zaklejania/pozycjonowanie elementów jest zadaniem w LayoutManager (które już używasz, dobrze!) - setSize w kodzie aplikacji ma (i ma i musi mieć :-) _no_ efekt – kleopatra

Odpowiedz

1

Spróbuj ustawić wypełnienie do GridBagConstraints.BOTH i dać oba przyciski jednakową wagę.

1

Zamiast okayButton.setSize(cancelButton.getSize()); użytku okayButton.setPreferredSize(cancelButton.getPreferredSize());

+1

-1 nie ... never-e ver use setXXSize w kodzie aplikacji (z pewnych powodów zobacz http://stackoverflow.com/questions/7229226/avoid-the-use-of-setpreferredmaximumminimumsize-methods-in-java-swing) zamiast tego użyj przyzwoitego LayoutManager – kleopatra

+0

dzięki za Porada. – Mohayemin

+0

Przy okazji, czy powinienem usunąć odpowiedzi, które mogą wprowadzić ludzi w błąd? – Mohayemin