我是新来的,在GWT,我的英语不太好,所以请原谅。 我需要使用GWT创建一个网站。该网站具有层次结构:主要全局标题,以及几个按钮。每个按钮打开应用程序的新部分,该部分有自己的子选项卡。每个子标签都假设是可导航的。例如:
--->喜好 --->创造一些东西 --->编辑内容
--->用户管理 - >政策
现在,我想了解使用GWT的最佳选择。 我想到了两个选择: 1.将在入口点主要活动。在它的启动函数中,我们将为每个子菜单创建ActivityManager(= sub tab = child)。每个子菜单将为其每个子菜单创建活动管理器,依此类推。 我们将为每个活动经理和火灾变更地点事件设置一个显示。
问题是我需要管理这些地方(所有地方应该去主要活动,应该采用它的参数并委托给子地点等) 否则,当用户复制并粘贴网址时,只会启动子活动,并且父活动不会被初始化。什么是最佳选择?你将如何实现层次结构?
感谢....
答案 0 :(得分:0)
菜单层次结构的最佳选择是使用嵌套的TabPanel小部件。这些可以根据您的需要尽可能深入,是构建菜单的绝佳选择。
我看到你也想管理两件事:
对于#1,您需要使用方法onModuleLoad
管理到达您应用的用户。请参阅此段代码以选择正确的选项卡。
public void onModuleLoad() {
tabPanel = new TabPanel();
tabPanel.add(new HTML("<h1>Page 0 Content: Llamas</h1>"), " Page 0 ");
tabPanel.add(new HTML("<h1>Page 1 Content: Alpacas</h1>"), " Page 1 ");
tabPanel.add(new HTML("<h1>Page 2 Content: Camels</h1>"), " Page 2 ");
String hash = Window.Location.getHash();
if (hash != null && hash.startsWith("#page")) {
int tabIndex = Integer.parseInt(hash.substring(5));
tabPanel.selectTab(tabIndex);
} else {
tabPanel.selectTab(0);
}
RootPanel.get().add(tabPanel);
}
此代码
见this page in GWT documentation。上面的代码来自此页面,但在我的示例中,我删除了历史记录管理。
在这两种情况下,关键概念是根据网址哈希找到正确的窗口小部件并选择它。