1

我正在使用智能 GWT 来开发我的应用程序,以创建我正在使用 GWT 组件的应用程序的结构。HTML 代码片段如下:

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

在我的pagePaneldiv 中添加了所有组件。当我在pagePaneldiv 中动态添加组件时,pagePaneldiv 不会根据添加的组件的大小放大,并且添加的智能 gwt 组件会溢出pagePaneldiv。所以我需要给智能 gwt 的每个 div 赋予 css。但是由于 GWT 自己生成 HTML 结构,因此不可能在代码中找到所有 div。

因为,我正在使用 flex table 来构建我的页面,所以在 smart gwt 的 Canvas 中添加了 FlexTable。Canvas被添加到initWidgetComposite类。我给 flex table 和 canvas 提供了 css,但是在 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的智能组件溢出问题。

谢谢,普南普罗希特

4

1 回答 1

2

SmartGWT 常见问题解答中涵盖:

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

我可以混合使用 Smart GWT 和 GWT 小部件吗?

是的,有警告。

Smart GWT 具有互操作性支持,允许将 Smart GWT 小部件添加到 GWT 容器中,并允许将 GWT 小部件添加到 Smart GWT 容器中,它适用于:

  • 向 Smart GWT 的增量迁移,例如将单个、复杂的 Smart GWT 组件(如 Calendar 或 CubeGrid)引入现有 GWT 应用程序

  • 在 Smart GWT 中使用复杂的第三方 GWT 小部件,其中 Smart GWT 没有相应的内置功能

但是,随意混合 Smart GWT 和 GWT(或其他)组件是没有意义的,也就是说,例如,您不应该将 GWT 小部件放置在 Smart GWT 容器中,而 Smart GWT 容器又位于 GWT 容器中。一般来说,不要混合小部件,除非您需要某个功能。

这样做的原因是两个 Ajax 小部件工具包(包括 GWT)可以互操作的最大程度是有限制的 - 没有标准允许在选项卡顺序管理、zIndex 管理、像素完美布局、部分等领域进行互操作508 可访问性和多级模式。

于 2010-10-26T17:36:14.913 回答