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;">

必要なデータが含まれていますが、2 番目の 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 に答える
0

編集: 重要なことは、centerウィジェットに何があるかです。例FlowPanelは領域を塗りつぶしますが、VerticalPanelは塗りつぶしません。次に、heightプロパティを100%に設定する必要があります。

于 2011-03-31T22:47:01.463 に答える