Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/338.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在Swing中实现后退按钮功能_Java_Swing - Fatal编程技术网

Java 在Swing中实现后退按钮功能

Java 在Swing中实现后退按钮功能,java,swing,Java,Swing,我在实现后退按钮功能时遇到了一个问题 我有两帧(主帧和第二帧),所以当我按下主帧上的按钮时,它会将我带到第二帧。在第二帧中,我有一个后退按钮,它将我带回到主帧。这是预期的工作。但问题是,一旦我在按下后退按钮后回到主机架上,主机架的所有对齐都会消失 在主帧上,我有以下代码转到第二帧: frame.dispose(); frame.setVisible(false); WebAppTest object = new WebAppTest(); object.createAndShowGUIWebAp

我在实现后退按钮功能时遇到了一个问题

我有两帧(主帧和第二帧),所以当我按下主帧上的按钮时,它会将我带到第二帧。在第二帧中,我有一个后退按钮,它将我带回到主帧。这是预期的工作。但问题是,一旦我在按下后退按钮后回到主机架上,主机架的所有对齐都会消失

在主帧上,我有以下代码转到第二帧:

frame.dispose();
frame.setVisible(false);
WebAppTest object = new WebAppTest();
object.createAndShowGUIWebAppTest();
在第二帧中,我使用以下代码返回到主帧:

MainLanding object = new MainLanding();
object.createAndShowGUIMainLanding();
frame1.dispose();
frame1.setVisible(false);

您最好使用一个包含
cardalayout
的JFrame,并在
cardalayout
中选择所需的正确面板,而不是在完全不同的框架之间切换。因此,您有一个窗口,然后在该窗口中有多个不同的面板,您可以选择在任何给定时间显示的一个


如果您仍然决定沿着单独的帧路径走,则不应处理第一帧并将其隐藏。只需隐藏它,然后在您想要返回时再次显示它。

我建议您创建一个新的列表,以便我们更容易帮助您。中的示例使用了
CardPanel
。另请参见(我认为此答案确定了最佳替代策略。)