[英]DockLayoutPanel doesn't work properly
我用下一個方式描述我的面板
<!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>
我想我知道你做錯了什么。 你需要這個:
RootLayoutPanel().get().add(new MyView());
代替:
RootPanel().get().add(new MyView());
因為如果你使用uibinder,你需要RootLayouPanel!
我希望它會對你有所幫助!
我已經修復了下一個方法:
<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>
編輯:重要的是, center
小部件中的內容。 示例FlowPanel將填充該區域,但VerticalPanel不會。 然后你必須將height
屬性設置為100%。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.