Java 将一个JFrame分配给另一个JFrame
我试图使当前的JFrame成为存储在内存中的JFrame。目前,我正在从内存中正确读取JFrame,我可以让它显示出来,但所有的动作侦听器都不工作Java 将一个JFrame分配给另一个JFrame,java,swing,user-interface,jframe,variable-assignment,Java,Swing,User Interface,Jframe,Variable Assignment,我试图使当前的JFrame成为存储在内存中的JFrame。目前,我正在从内存中正确读取JFrame,我可以让它显示出来,但所有的动作侦听器都不工作 gui.dispose(); gui = savedGUI; gui.setVisible(true); 这似乎没有正确地将当前GUI(GUI)设置为保存的版本(savedGUI)。我是否应该在gui上调用另一种方法而不是setVisible 提前谢谢 我也不太明白你在做什么。为什么您认为需要使用单个
gui.dispose();
gui = savedGUI;
gui.setVisible(true);
这似乎没有正确地将当前GUI(GUI)设置为保存的版本(savedGUI)。我是否应该在gui上调用另一种方法而不是setVisible
提前谢谢 我也不太明白你在做什么。为什么您认为需要使用单个引用变量引用GUI 只要做:
savedGui.setVisible( false );
如果要再次显示GUI,请执行以下操作:
savedGui.setVisible( true );
我也不太明白你在做什么。为什么您认为需要使用单个引用变量引用GUI 只要做:
savedGui.setVisible( false );
如果要再次显示GUI,请执行以下操作:
savedGui.setVisible( true );
当我确保所有ActionListeners实现可序列化时,问题就解决了。当我确保所有ActionListeners实现可序列化时,问题就解决了。为什么要这样做?总的目的是什么,因为我猜有更好的方法来完成您要做的事情,比如保存GUI的模型部分而不是视图。我所要做的就是从内存中加载GUI,就像它被保存时一样。保存应用程序模型的状态,然后根据此状态重新创建GUI会更好。我同意你可能是对的,但我想知道它们是否是重建存储的JFrame对象的一种方法?你为什么这样做?总的目的是什么,因为我猜有更好的方法来完成您要做的事情,比如保存GUI的模型部分而不是视图。我所要做的就是从内存中加载GUI,就像它被保存时一样。保存应用程序模型的状态,然后根据此状态重新创建GUI会更好。我同意你可能是对的,但我想知道它们是否是重建存储的JFrame对象的一种方法?将savedGUI设置为可见会显示GUI,但所有动作侦听器都已删除,这对我的程序至关重要。此人似乎遇到了相同的问题,使Gui不可见时您不会丢失侦听器。将savedGUI设置为可见会显示Gui,但所有操作侦听器都已删除,这对我的程序至关重要。这个人似乎遇到了同样的问题,当您使Gui不可见时,您不会丢失侦听器。为什么要将JFrame序列化为内存?为什么要将JFrame序列化为内存?