我有一个要求,我需要在新窗口中显示拖放单元格表。 我已经检查了答案,我已经搜索了这个,但我没有得到适当的答案。 我可以点击一个按钮打开一个新窗口。以下是我正在使用的代码:
@UiHandler(value = { "buttonReleaseView" })
void onReleaseViewClick(ClickEvent clickEvent) {
String winUrl = GWT.getModuleBaseURL() + "releaseView/";
String winName = "Release View";
openNewWindow (winName, winUrl); /* spawn a new window - not popup */
}
/**
* Opens a new windows with a specified URL..
*
* @param name String with the name of the window.
* @param url String with your URL.
*/
public static void openNewWindow(String name, String url) {
com.google.gwt.user.client.Window.open(url, name.replace(" ", "_"),
"menubar=no," +
"location=false," +
"resizable=yes," +
"scrollbars=yes," +
"status=no," +
"dependent=true");
}
现在,我应该如何在这个新窗口中显示单元格表?
请帮帮我。
提前致谢
Richa
答案 0 :(得分:1)
GWT模块位于浏览器页面内,因此如果要打开新的浏览器页面并在其中显示GWT组件,则基本上需要在其自己的主机页面中加载新的GWT模块。在这种情况下,我可能会使用一个弹出窗口,因为它会更简单。
但是如果你真的需要这样做,你可以创建一个单独的主机页面和GWT模块来显示表,或者你可以重用相同的主机页面和GWT模块并传递一些URL参数或历史记录来指示哪个查看显示。请记住,即使在最后一种情况下,您仍然会在浏览器中运行两个GWT模块实例。
通过在Window.open()返回的句柄上调用document.write
,还有或多或少的hackish方法直接写入新的浏览器窗口,但我只会这样做,因为简单的事情不会需要太多的用户交互(例如,我已将此方法用于打印预览功能)。