Gwt 在UIBinder的特定div元素内创建DockPanel

Gwt 在UIBinder的特定div元素内创建DockPanel,gwt,Gwt,可以在GWT中向html元素添加面板吗 我已经检查过了,它不包含wrap或setElement方法。我还尝试检查源代码,但它没有一个以元素作为输入的构造函数。构造函数确实调用了getTable()方法,该方法返回一个表元素,但我不知道在哪里以及如何设置它 有什么想法吗 ===================编辑================== 通过查看源代码,这似乎是不可能做到的。DockPanel继承自cellPanel,下面是is在构造函数中的作用 /** * Creates

可以在GWT中向html元素添加面板吗

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

有什么想法吗

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

通过查看源代码,这似乎是不可能做到的。DockPanel继承自cellPanel,下面是is在构造函数中的作用

  /**
   * 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


如果您正在寻找如何将gwt小部件添加到特定的html元素,那么下面就是一个例子

让我们考虑添加一个<代码> AbjuttPosis<代码>到HTML div,ID为“强> MyPosie: 然后您可以通过以下方式实现:

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

希望这能对您有所帮助。

很抱歉,我没有理解您的意思。您是想说,您想在HTML页面中的特定div中添加一些gwt元素(小部件)吗?这就是你要问的吗?如果没有,请确切地告诉我您想要什么,以及您希望输出的内容。@Path请添加您试图使用但不起作用的源代码。添加每个人都可以查找的gwt源代码不会有什么帮助。一般来说,如果你想得到一个好的答案,那么就写一个最能描述你的问题的问题,而不是把重点放在你尝试过的解决方案上,你认为什么是错误的,什么是问题的原因。是的,回头看这个问题,它是模棱两可的。很抱歉。我想做的是,如果给您一个元素&现在,在我想做的Java代码中,使用新的DockPanel(Dom.getElementById(“abc))&它将在该元素内创建DockPanel。我引用的源代码基本上表明,即使我扩展了该类,这也是不可能的。整个框架的编写都是为了临时创建元素并将其附加到DOM,而不是能够指定它。更好的方法是使用HTMLPanel并将元素包装在div周围您可以在HTML面板中的div元素内声明GWT元素。
   TableElement tEle = DOM.getElementById("dockLayoutPanel");
   DockPanel panel = new DockPanel(tEle);
   // and then use the panel as usual.
AbsolutePanel aPanel = new AbsolutePAnel();
Rootpanel.get("myPanel").add(aPanel);