GridBagLayout: равномерно распределенные ячейки

Можно ли полностью имитировать поведение GridLayout с помощью диспетчера GridBagLayout?

По сути, у меня есть сетка 8x8, в которой каждая ячейка должна иметь одинаковую ширину и высоту. GridLayout сделал это автоматически. Но я хочу добавить в сетку еще одну строку и столбец, размер которых не такой же , как у других. Эта строка / столбец должны занимать все оставшееся пространство, которое может остаться (потому что доступный размер не может быть равномерно распределен на 8 ячеек). Возможно ли это вообще, или мне, опять же, придется использовать другой менеджер компоновки?

edit

Вот простой график того, чего я хочу достичь, упрощенный до 4 ячеек: Но я хочу добавить в сетку еще одну строку и столбец, размер которых не такой же , как у других. Эта строка / столбец должны занимать все оставшееся пространство, которое может остаться (потому что доступный размер не может быть равномерно распределен на 8 ячеек). Возможно ли это вообще, или мне, опять же, придется использовать другой менеджер компоновки?

edit

Вот простой график того, чего я хочу достичь, упрощенный до 4 ячеек: Но я хочу добавить в сетку еще одну строку и столбец, размер которых не такой же , как у других. Эта строка / столбец должны занимать все оставшееся пространство, которое может остаться (потому что доступный размер не может быть равномерно распределен на 8 ячеек). Возможно ли это вообще, или мне, опять же, придется использовать другой менеджер компоновки?

edit

Вот простой график того, чего я хочу достичь, упрощенный до 4 ячеек: Problem graphic

Цветные ячейки - это те ячейки, которые я добавил к реальной сетке (серой), в которой есть ячейки с одинаковой высотой и шириной x . Таким образом, высота и ширина сетки равны 4 * x . Теперь я хочу, чтобы дополнительные ячейки имели необходимую ширину / высоту (minimumSize) плюс остальную доступную ширину / высоту от полного размера.

Если размер всей панели изменен, ячейки серой сетки должны снова занять как можно больше места.

12
задан poke 12 September 2010 в 16:36
поделиться