Как правильно установить размер элементов графического интерфейса?

StackOverflow https://stackoverflow.com/questions/2523301

Вопрос

Я использую Swing для создания графического интерфейса.У J есть JFrame, содержащий одну основную JPanel, которая, в свою очередь, содержит несколько JPanel, которые, в свою очередь, содержат кнопки.

Я хотел бы установить определенные размеры для кнопок mu и JPanels.Как это работает?Должен ли я установить размеры своих кнопок, а затем размер JPanel и JFrame будет установлен в соответствии с размерами кнопок?Или это работает в обратную сторону?Я установил размер JPanel, и размер кнопок будет установлен автоматически?

ДОБАВЛЕН:

я использовал fieldPanel.setPreferredSize(new Dimension(100,100)); и на внешний вид окна это никак не повлияло.Может быть потому, что эта панель находится в «середине иерархии», она содержит несколько кнопок и содержится в других JPanels?

Это было полезно?

Решение

Это зависит от менеджера компоновки, который вы используете.Некоторые, например GridLayout, не обращают внимания на установленный вами размер, а применяют правила самого менеджера макетов.

Другие, такие как GridBagLayout, позволяют лучше контролировать размер компонентов.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top