Как заставить Borderlayout заполнить свой контейнер?
Я программист GWT, пытаюсь освоить использование PlayN с библиотекой GUI Tripleplays.
Возникли небольшие затруднения при разработке того, как получить макет границы, заполняющий все пространство его контейнера. (предположительно с расширением среднего пространства, чтобы заполнить доступный размер)
BorderLayout border = new BorderLayout(3);
Group mainLayout = new Group(border);
mainLayout.setConstraint(AxisLayout.stretched());
Button Center= new Button("test");
Center.setConstraint(BorderLayout.CENTER);
mainLayout.add(Top);
mainLayout.add(Bottom);
mainLayout.add(Left);
mainLayout.add(Center);
Top Bottom и Left аналогично указываются для BorderLayout.Left, top и т. Д.
все это затем добавляется в корневой экран с
_root.setConstraint(AxisLayout.stretched());
_root.add(0, mainLayout);
(У самого _root просто есть AxisLayout.vertical() ... который, я предполагаю, заставляет его работать как вертикальная панель gwt)
На данный момент вертикальное пространство кажется заполненным, но не горизонтальное.
Любые идеи, где я иду не так?
1 ответ
Я бы предложил установить
border.setConstraint(AxisLayout.stretched());
перед добавлением границы в mainLayout. Это скажет mainLayout растянуть этот дочерний виджет.