Вы можете использовать setSize(Dimension d)
, где вы указываете размер каждой кнопки.
Или вы можете использовать различные схемы для вашего приложения - я, в основном с помощью GridLayout, который работает очень хорошо для меня - видеть tutorial
EDIT: Как уже упоминалось в комментариях: Лучше подход заключается в использовании некоторые менеджеры макетов обрабатывают размер для вас. Если вы задали размер кнопки явно с помощью команды выше, это может привести к тому, что она выглядит «не очень хорошо», если вы измените размер окна. Макет может сделать это для вас более красиво.
Кстати, если вы будете использовать
private JFrame application;
application.pack();
перед показывая приложение к пользователю, он может «miracelously» вылечить все «не красивые» выглядящие кнопки и ручки
+1 для 'GridLayout' - 1 (граничный -2) для 'setSize()'. Чистый результат - 0. –
Попытка защитить себя, что я отвечаю на вопрос, это не хороший подход, не так ли? Фактически, я попытался решить ту же проблему, установив размеры, но потом выяснил, что макет лучше подходит. Вероятно, отредактируйте ответ немного ») –
Редактирование - хороший старт, но еще недостаточно. Вызов' setSize() 'плохой, потому что 1) Если макет будет отмечать * любой * размер, это предпочтительный размер, скорее чем размер. 2) Выполнение правильных минимальных размеров (или размера или предпочтительного размера) для кнопки с несколькими размерами шрифтов и лиц на разных ОС с использованием разных PLAFS (и т. д.) - непростая задача. прилагает значительные усилия, чтобы рассчитать этот размер, нецелесообразно попробовать и угадать. –