2012-10-05 97 views
2

我需要在UiBinder中實現DockLayoutPanel。我知道我們可以在UiBinder中使用< g:north> < g:west>等等來做DockLayoutPanel.addNorth(),DockLayoutPanel.addWest()做的事情。我的問題是,是否有任何Uibinder,它可以做DockLayoutPanel.insertNorth(),DockLayoutPanel.insertWest()相同的事情?GWT - UiBinder中的docklayout面板

另外,是否有任何官方文件可以搜索Uibinder命令,以便我可以知道我可以用於uibinder?

謝謝。在UI

<g:FlowPanel> 
    <g:DockLayoutPanel ui:field="myPanel"> 
     <g:west size="300"> 
      <g:VerticalPanel ui:field="mySideBar" /> 
     </g:west> 
     <g:center> 
      <g:VerticalPanel ui:field="myMainPanel" /> 
     </g:center> 
    </g:DockLayoutPanel> 
</g:FlowPanel> 

回答

0

這兩個add*()insert*() DockLayoutPanel的方法是用於編程運行時添加的子面板。 UiBinder不會與這些方法「做同樣的事情」。您直接使用UiBinder的工作僅在設計時發生。

UiBinder是一個靜態佈局工具,它在初始化後立即成爲您的小部件的「快照」,這是一種描述元素相對於彼此的定位的方式。

使用UiBinder指定的小部件可以在初始化後以編程方式進行操作。假設您指定的以下佈局:

<g:DockLayoutPanel ui:field="myDockPanel"> 
    <g:north size="100"> 
     <g:Label ui:field="northernLabel">I am far north</g:Label> 
    </g:north> 
    <g:center> 
     <g:Label ui:field="centerLabel">Center Stage</g:Label> 
    </g:center> 
</g:DockLayoutPanel> 

在運行代碼後,你的看法初始化你現在可以走:

myDockPanel.insertNorth(new Label("I am even farther north!"), 100.0, northernLabel); 

此外,是否有任何官方文件,我可以搜索Uibinder 命令,以便我可以知道我可以用於uibinder嗎?

谷歌開發指南section on declarative layout with UiBinder是正常的,你可以得到,AFAIK。

2

這裏是你在找什麼活頁夾。您可以使用小部件和HTML指定佈局,並且可以爲小部件設置各種屬性(如類,寬度,高度,文本,標題,值等)。但是你不能告訴Ui:例如,Binder在一種情況下插入一個小部件,而不是插入另一箇中。你在你的應用程序代碼中執行它。

0

有沒有 「命令」: