Вопрос

У меня есть два JPanel (назовем их Panel1 и Panel2). Эти панели имеют одинаковую ширину, но разной высоты.

Я хочу поместить эти JPanel в один большой JPanel (назовем его Panel0) и расположить их друг над другом (я решил установить макет Panel0 как GridLayout (0,1)).

Проблема в том, что обе вложенные панели (панели 1 и 2) имеют одинаковые размеры (самые большие между двумя), а не setPreferredDimension и setDimension, которые я им установил.

Извините, я не могу предоставить какой-либо код (к панели добавлено много дерьма, и все это связано с работой). Любой совет? Спасибо!

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

Решение

GridLayout заставляет все компоненты иметь одинаковый размер; вот почему это называется сеткой.

Поскольку у вас есть только две панели, я бы предложил использовать BorderLayout с одной панелью в NORTH , а другой - CENTER . Если вы разрешите изменение размера, то в CENTER будет развернуто расширение для заполнения любого дополнительного вертикального пространства, так что просто помните об этом.

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