3

我用下一种方式描述我的面板

<!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent">
<ui:UiBinder xmlns:ui='urn:ui:com.google.gwt.uibinder'
         xmlns:g='urn:import:com.google.gwt.user.client.ui'>
<g:DockLayoutPanel unit="PX" width="600" >
    <g:north size="85">
    ....
    </g:north>
    <g:center>
    ....

    </g:center>
</g:DockLayoutPanel>

为北和居中的下一个 div 生成 GWT。

 <div style="position: absolute; overflow: hidden; left: 0px; top: 0px; right: 0px; height: 85px;"
 <div style="position: absolute; overflow: hidden; left: 0px; top: 85px; right: 0px; bottom: 0px;">

它们包含我需要的数据,但没有显示第二个 div。我哪里错了?

UPD: 例如,对于

    <g:center>
        <g:FlowPanel height="100%">
            <g:Label height="100%">TEST2</g:Label>
        </g:FlowPanel>
    </g:center>

我明白了

<div style="position: absolute; overflow: hidden; left: 0px; top: 85px; right: 0px; bottom: 0px;">
<div style="position: absolute; overflow: hidden; left: 0px; top: 85px; right: 0px; bottom: 0px;">
    <div style="height: 100%; position: absolute; left: 0px; top: 0px; right: 0px; bottom: 0px;">
        <div class="gwt-Label" style="height: 100%;">TEST2</div>
    </div>
</div>
</div>
4

3 回答 3

9

我想我知道你做错了什么。你需要这个:

RootLayoutPanel().get().add(new MyView());

代替:

RootPanel().get().add(new MyView());

因为如果你使用 uibinder,你需要 RootLayouPanel!

我希望它会帮助你!

于 2011-04-01T09:23:29.610 回答
1

我已经通过下一个方法解决了这个问题:

<ui:style>
    .visible {
        overflow: visible !important;
    }
</ui:style>

<g:DockLayoutPanel unit="PX" width="100%" height="100%">
    <g:north size="46" styleName="{style.visible}">
         ...
    </g:north>
</g:DockLayoutPanel>
于 2014-09-24T14:03:38.497 回答
0

编辑: 重要的是,center小部件中有什么。示例 FlowPanel 将填充该区域,但 VerticalPanel 不会。然后你必须将height属性设置为 100%。

于 2011-03-31T22:47:01.463 回答