重用的GWT小部件变得不可见

重用的GWT小部件变得不可见,gwt,reusability,Gwt,Reusability,我有一个带有选项卡栏的小部件 <g:DockLayoutPanel unit="EM"> <g:north size="2.5"> <g:TabBar height="2.5em" ui:field="tabBar" /> </g:north> <g:center> <g:SimpleLayoutPanel ui:field="contentWidget" /> </g:center&g

我有一个带有选项卡栏的
小部件

<g:DockLayoutPanel unit="EM">
  <g:north size="2.5">
    <g:TabBar height="2.5em" ui:field="tabBar" />
  </g:north>
  <g:center>
    <g:SimpleLayoutPanel ui:field="contentWidget" />
  </g:center>
</g:DockLayoutPanel>
这很好用

几个选项卡有一个共同的小部件,所以我想使用这个小部件的一个实例(用于同步)


该方法将被调用,小部件位于DOM中,但不可见。我认为问题在于
SimpleLayoutPanel
queryNode
大小的单元格是3x35 px。

只需复制所讨论的小部件就更容易了。您是否已经尝试过,并将其确定为瓶颈?是的,这是当前的生产版本。在谷歌GWT的一次谈话中,他们说你应该重用小部件。这就是我想做这件事的原因。(我不需要维护事件来同步每个可能的实例和更改。
@UiHandler("tabBar")
void onTabsSelection(final SelectionEvent<Integer> event) {
  // ...
}
<g:LayoutPanel>
  <!-- query -->
  <g:layer top="0" height="3em">
    <g:HorizontalPanel width="100%" height="3em" verticalAlignment="ALIGN_MIDDLE">
      <g:SimpleLayoutPanel ui:field="queryNode" />
      <g:cell horizontalAlignment="ALIGN_RIGHT">
        <my:StepPager ui:field="pager" />
      </g:cell>
    </g:HorizontalPanel>
  </g:layer>
  <!-- map -->
  <g:layer left="0" right="17em" top="3em" bottom="0">
    <g:SimpleLayoutPanel ui:field="mapNode" />
  </g:layer>
</g:LayoutPanel>
@Override
protected void onAttach() {
  queryNode.setWidget(queryBar);
  super.onAttach();
}