2010-10-26 58 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部分可访问性和多层次模式。