Вложенная проблема изменения размеров JPanel - PullRequest
0 голосов
/ 03 августа 2009

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

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

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

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

1 Ответ

4 голосов
/ 03 августа 2009

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

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

...