是否有可能在GWT中克隆一个面板?如果是这样,是否还复制了所有处理程序设置?
基本上我有一个完整的控件面板,所有布局,我想复制它并在PopupPanel中弹出它,而不必首先完成创建控件的代码。
我得到了DOM.clone()和这条消息post。但是在Widget,UIObject等中没有wrap().setElement()受到保护。
答案 0 :(得分:3)
从DOM元素构建Widget
的快速方法:
Widget widget = new Widget () {{
setElement(myElement);
}};
但不,AFAIK DOM.clone()
也不会复制附加的处理程序。我怀疑这不会像你希望的那样有效。
答案 1 :(得分:1)
您是否考虑过创建一个新的GWT小部件,其中包含所有这些控件?这样,您可以在两个位置托管窗口小部件面板,而无需克隆它。 (并且可能在此过程中为您节省微妙的错误。)
答案 2 :(得分:1)
创建一个新类,其中包含面板中的所有控件和其他功能,并将其视为新窗口小部件...现在您不必担心克隆它们,您可以将其用作常规窗口小部件在你的程序中(你可以像对待其他小部件一样初始化它)...这就是我开始我的一个项目,我试图克隆一个面板......