2010-10-26 60 views
1

我正在使用智能GWT來開發我的應用程序,以創建我正在使用GWT組件的應用程序的結構。該HTML代碼片段如下:添加Smart Gwt組件不在html div標記中呈現

<div class="container"> 
    <div id="pagePanel" ></div> 
</div> 

在我pagePanel DIV所有組件。當我在pagePanel div中動態添加組件時,pagePanel div不會按照添加組件的大小進行放大,並且添加的智能gwt組件會溢出pagePanel div。所以我需要給css每個智能gwt的div。 但是,由於GWT自己生成HTML結構,因此無法在代碼中找到所有的div。

由於我使用flex table來組織我的頁面,FlexTable被添加到了smart gwt的Canvas中。 Canvas被添加到Composite超類的initWidget。 我給了CSS flex表和canvas,但在canvas和flex table之間生成了另外兩個div,我無法得到如何給這些div的CSS,因爲我無法在我的代碼中找到它們。

的代碼如下:

NTCanvas smartContainer = new NTCanvas(); 
smartContainer.setWidth("970px"); 
smartContainer.setStyleName("smart-container"); 
smartContainer.setStylePrimaryName("smart-container"); 
initWidget((Widget) smartContainer); 

任何機構可以告訴你怎麼找到GWT生成的代碼中的div。或者如何解決來自PagePanel div的智能組件的溢出問題。

感謝, Punam Purohit

+0

這是代碼中的工作示例? – 2011-12-06 20:58:29

回答

2

在SmartGWT的常見問題涵蓋:

http://forums.smartclient.com/showthread.php?t=8159#aMix

能否混合智能GWT和GWT部件?

是的,有注意事項。

智能GWT具有互操作性的支持,允許智能GWT小部件添加到GWT 容器,並允許GWT窗口小部件添加到智能GWT容器,它是適當的 時使用此:

  • 增量遷移爲智能GWT,如引入單數,複雜的智能GWT 部件,例如日曆或CubeGrid到現有的應用程序GWT

  • 使用智能GWT內複雜的第三方GWT窗口小部件,瓦特這裏智能GWT沒有 相應的內置功能

然而,它沒有意義的,自由地混合使用智能GWT和GWT(或其他) 成分,也就是說,例如,你不應該的地方GWT容器內部的GWT容器內的GWT容器 。一般來說,不要混用小部件,除非需要某個功能強制您使用。

這樣做的原因是,有限制,最大程度兩個Ajax的小部件包 (包括GWT)可以互操作的 - 沒有標準,它允許在選項卡順序,zIndex的經營管理 領域的互操作性,像素完美的佈局,第508部分可訪問性和多層次模式。