【问题标题】:How to change the content of a gwt panel?如何更改 gwt 面板的内容?
【发布时间】:2016-02-22 10:10:41
【问题描述】:

假设我有一个名为 A 的视图,它的 xml 类似于:

<g:HTMLPanel>
  <my:widgetA>
    ....
  </my:widgetA>
</g:HTMLPanel>

另外,我还有另一个名为 widgetB 的小部件。我想根据某些条件更改视图 A 的内容,例如:

if (...is true) {
   A.clear();
   A.add(widgetA);
} else {
   A.clear();
   A.add(widgetB);
}

现在的问题是视图 A 无法正确显示 widgetA。视图 A 在添加 widgetA 时变为空白。上面的实现有什么问题?

【问题讨论】:

  • 这段代码没有问题。问题出在其他地方。检查浏览器中的 HTML 以了解为什么小部件 A 不可见。

标签: gwt widget


【解决方案1】:

您可能正在添加一个实现 RequiresResize 或至少需要固定大小的小部件。

要确定是否是这种情况,只需在具有固定大小的那个小部件上调用 [setSize](http://www.gwtproject.org/javadoc/latest/com/google/gwt/user/client/ui/UIObject.html#setSize(java.lang.String, java.lang.String)):widgetA.setSize('50px','50px);'

如果可行,您要么需要提供尺寸,要么使用实现ProvidesResize 的面板。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-28
    • 2023-04-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多