我正在尝试关闭一个框架,但打开一个新框架。

我的应用程序具有页面A,带有某些控件和特定按钮的JPanel,并且当用户单击按钮时,我希望页面A消失而页面B出现(页面B的控件取决于所做的选择由用户在第A页上找到)。

This has been asked before,但没有令人满意的答案。在ActionListener实现(即jpanelForPageA类中的public void ActionPerformed(ActionEvent e))内部,可以轻松编写this.setVisible(false),但是如何将页面B设置为可见状态?

最佳答案

您可以删除面板a,然后添加面板b技巧。另一个是使用CardLayout

创建面板时,可以将它们添加到包含JPanel并使用CardLayout初始化的面板:

JPanel container = new JPanel(new CardLayout());
containter.add(getPanelA(), "PANEL_A");
containter.add(getPanelB(), "PANEL_B");


然后,在您的actionPerformed中,当您想显示panelB时,请执行以下操作:

CardLayout cl = (CardLayout) container.getLayout();
cl.show("PANEL_B");


请查看this tutorial以获得更多想法。

关于java - 如何关闭框架却又打开新框架? (重访),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2945856/

10-11 22:24
查看更多