0

是否可以将 Panel 添加到 GWT 中的 html 元素?

我已经检查过了,它不包含 wrap 或 setElement 方法。我还尝试检查源代码,它没有以 Element 作为输入的构造函数。构造函数确实调用了 getTable() 方法,该方法返回一个表格元素,但我不知道在哪里以及如何设置它。

有任何想法吗?

=============== 编辑==================

通过查看源代码,似乎无法做到这一点。DockPanel 继承自 cellPanel,这是在构造函数中所做的。

  /**
   * Creates an empty dock panel.
   */
  public DockPanel() {
    DOM.setElementPropertyInt(getTable(), "cellSpacing", 0);
    DOM.setElementPropertyInt(getTable(), "cellPadding", 0);
  }

 public CellPanel() {
    table = DOM.createTable();
    body = DOM.createTBody();
    DOM.appendChild(table, body);
    setElement(table);
  }



  /**
   * Creates an empty dock panel.
   *
   * @param unit the unit to be used for layout
   */
  public DockLayoutPanel(Unit unit) {
    this.unit = unit;

    setElement(Document.get().createDivElement());
    layout = new Layout(getElement()); // private
    layoutCmd = new DockAnimateCommand(layout); // private
  }

==================== 编辑2 ===========================

鉴于:

HTML

<html>
<body>
   <table id="dockLayoutPanel">
   </table>
</body>
</html>

JAVA/JS

   TableElement tEle = DOM.getElementById("dockLayoutPanel");
   DockPanel panel = new DockPanel(tEle);
   // and then use the panel as usual.
4

1 回答 1

0

如果您正在寻找如何将 gwt 小部件添加到特定的 html 元素,那么这里是示例。

让我们考虑你想添加一个AbsolutePanel到 HTML div,id为 myPanel:然后你可以通过这样的实现来实现它:

AbsolutePanel aPanel = new AbsolutePAnel();
Rootpanel.get("myPanel").add(aPanel);

希望这会帮助你。

于 2013-03-10T09:44:36.937 回答