我希望在给定时间在屏幕上的同一位置显示两个面板之一的效果。也许我可以使用 DeckPanel 但在设计器中我将无法编辑隐藏的面板。也许你可以推荐一种技术?
我找到了一个可行的解决方案,但恕我直言。IE。在代码中,我插入了我想要显示的面板并删除了我不想显示的面板(从包含面板)。
我希望在给定时间在屏幕上的同一位置显示两个面板之一的效果。也许我可以使用 DeckPanel 但在设计器中我将无法编辑隐藏的面板。也许你可以推荐一种技术?
我找到了一个可行的解决方案,但恕我直言。IE。在代码中,我插入了我想要显示的面板并删除了我不想显示的面板(从包含面板)。
如果您想以“正确”的方式执行此操作,我建议您研究 GWT 团队建议用于维护大型 GWT 应用程序的 MVP 模式。
看看可能的实现:mvp4g或gwt-platform。他们会照顾您切换视图,以及维护历史记录(后退/前进按钮将正常工作)等等。
您可以选择Tablayoutpanel
无需维护自己的代码。
只需将两个面板放在另一个面板中,然后设置它们的可见性。
Panel mainPanel = new Panel();
Panel subPanel1 = new Panel();
Panel subPanel2 = new Panel();
mainPanel.add(subPanel1);
mainPanel.add(subPanel2);
subPanel1.setVisible(true);
subPanel2.setVisible(false);
然后,当您想查看面板 2 时,您只需执行以下操作:
subPanel1.setVisible(false);
subPanel2.setVisible(true);