как создать композит с рабочей панелью в нем - PullRequest
0 голосов
/ 22 января 2012

Я делаю первые шаги с помощью gwt, чтобы создать простой сайт.Я пытаюсь использовать платформу GWT и дизайнер GWT для создания макетов.сайт настолько прост, что многие страницы имеют одинаковый макет и отличаются только тем, что находится посередине, поэтому у меня появилась «блестящая» идея: почему бы вам не создать общий макет в виде композита и добавить в негоСередина этого композита - простая панель, так что вы можете добавить то, что отличается на каждой странице.я создал композит и вставил в него простую панель, но даже если я выставил виджет, дизайнер gwt не позволяет мне добавлять другие виджеты внутри этой панели, когда я создаю другие виды пользовательского интерфейса.я что-то забыл?THX много

Ответы [ 2 ]

0 голосов
/ 22 января 2012

Если вы хотите использовать Composite , используемый в UiBinder, который ведет себя как панель, вам придется создать для него собственный анализатор элементов, но проблема в том, что для этого нет общедоступного API.в GWT (по состоянию на 2.4.0).Может быть, gwt-customuibinder может помочь с этим.Альтернативой является реализация HasWidgets , поскольку для этого есть встроенный синтаксический анализатор .

0 голосов
/ 22 января 2012

Я не уверен, что вы должны идти по пути создания собственного виджета Composite для этой цели.То, что вы описали, это точно , для чего было создано DockLayoutPanel.По сути, вам нужна (относительно) постоянная north (возможно, логотип, возможно навигация), south (какой-то нижний колонтитул) и, возможно, east / west для боковых панелей или что у вас есть, и center, который изменяется для отображения «текущей страницы».Существует множество примеров использования DockLayoutPanel таким образом - даже у Javadoc есть отличный пример.Вы можете легко добавить панель к center и использовать эту панель в качестве «главной панели».

Если вы хотите создать свой собственный виджет Composite, который может иметь несколько произвольных дочерних виджетов и будет использоваться GWT Designer, у вас впереди много работы.

...