Как я могу легко изменить размер текстовой области (в пикселях) без использования [setColumns] или [setRows]?
Вы не должны пытаться это делать.
Методы строки / столбца предназначены для того, чтобы дать текстовой области подсказку, чтобы она могла рассчитать свой собственный предпочтительный размер.
Строки / столбцы созданы для того, чтобы вам было легко.
Я также начал изучать GridBagLayout
Вероятно, это хорошее место для начала. Например, я вижу сетку 2 x 2:
- черная область - это будет расти вертикально и горизонтально
- текстовая область - это будет расти по вертикали
- кнопки под черной областью - фиксированный размер
- кнопки под текстовой областью - растут горизонтально
Тогда для областей 3 и 4 вы бы использовали панель для удержания компонентов. Эти панели могут использовать другие менеджеры компоновки.
Область 3 может быть BoxLayout
. Она также может содержать панель, использующую GridLayout
для двух полей со списком.
Область 4, вероятно, будет GridLayout
.
. Главное в управлении компоновкой заключается в том, что вы можете вкладывать панели с различными менеджерами макетов.
Прочтите руководство по Swing на Менеджеры макетов для получения дополнительной информации и рабочих примеров