我是一名GWT新手所以请耐心等待。
我正在尝试从onModuleLoad()中实现HorizontalPanel,其中左侧是一个简单的导航菜单。
但是,我希望根据用户在导航菜单中选择的内容加载面板的右侧。这在一个巨大的类中很简单,但我希望为每个导航选项编写一个类。
例如:
这可以在不为每个选项创建定制小部件的情况下完成吗?
如果是这样怎么样?请帮忙!
感谢您的帮助!
Harperonline
答案 0 :(得分:0)
假设您正在使用HorizontalSplitPane,您可以执行以下操作:
选项2:
HorizPanel.getRightWidget().removeFromParent();
HorizPanel.setRightWidget( new Option2() );
选项1:
Widget W = HorizPanel.getRightWidget();
w.add( new Option1() );
除此之外,我不确定你究竟在问什么。您必须以某种方式跟踪要更新的元素。但GWT使您能够覆盖已创建的小部件,因此您所做的事情应该是不可能的。
答案 1 :(得分:0)
只需在GWT启动类上创建一个公共静态类Widget变量(public static Widget contentPanel = new VerticalPanel())。将此小组件添加到水平面板的右侧。然后,当您单击左侧导航时,您只需根据需要创建其每个类,并使类构造函数调用contentPanel.clear(),最后调用contentPanel.add()。
如果您想简化流程。您可以让各个内容类实现一个通用的抽象类来处理所有常见的工作。