Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/317.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 formWindowClosed不能正常工作?_Java_Swing_Netbeans - Fatal编程技术网

Java 为什么Swing formWindowClosed不能正常工作?

Java 为什么Swing formWindowClosed不能正常工作?,java,swing,netbeans,Java,Swing,Netbeans,我有一个SWING表单,当我关闭应用程序时,我想将数据保存到文本文件中 这是Swing生成的代码,我无法修改: setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); addWindowListener(new java.awt.event.WindowAdapter() { public void windowClosed(java.awt.event.WindowEven

我有一个SWING表单,当我关闭应用程序时,我想将数据保存到文本文件中

这是Swing生成的代码,我无法修改:

    setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
    addWindowListener(new java.awt.event.WindowAdapter()
    {
        public void windowClosed(java.awt.event.WindowEvent evt)
        {
            formWindowClosed(evt);
        }
    });
这是我对formWindowClosed的自定义实现。问题是应用程序关闭时没有执行formWindowClosed

formWindowClosed不是我想在应用程序关闭前将执行的代码放入其中的方法吗

formWindoClosed实现:

private void formWindowClosed(java.awt.event.WindowEvent evt)
{

    System.out.println("Message");
    brain.getBirou().getProbaRepo().WriteParticipantToTXT();
}

如果要在进程退出前执行代码,必须将默认关闭操作设置为WindowConstants.DISPOSE\u ON\u close,然后在侦听器方法中保存文件,然后调用System.exit0;当你完成的时候。 Swing本身也不会生成代码。也许你应该亲手为自己编写GUI代码。当然你可以修改任何东西。
您必须能够更改窗口的退出行为,因此将其设置为关闭时释放应该会有所帮助。也许您应该在IDE中查找可以更改它的位置。或者只需用文本编辑器打开它…

如果要在进程退出之前执行代码,则必须将默认关闭操作设置为WindowConstants.DISPOSE\u ON\u close,然后在侦听器方法中保存文件,然后调用System.exit0;当你完成的时候。 Swing本身也不会生成代码。也许你应该亲手为自己编写GUI代码。当然你可以修改任何东西。
您必须能够更改窗口的退出行为,因此将其设置为关闭时释放应该会有所帮助。也许您应该在IDE中查找可以更改它的位置。或者用文本编辑器打开它…

您可以改用formWindowClosing

要通过Netbeans IDE GUI生成器执行此操作,请执行以下操作: 转到“设计”视图,右键单击导航器窗口内的[JFrame]。转到事件并选择要添加的事件


请记住在defaultCloseOperation属性中将框架标记为DO\u NOTHING\u ON\u CLOSE。

您可以改用formWindowClosing

要通过Netbeans IDE GUI生成器执行此操作,请执行以下操作: 转到“设计”视图,右键单击导航器窗口内的[JFrame]。转到事件并选择要添加的事件


记住在defaultCloseOperation属性中将框架标记为DO\u NOTHING\u ON\u CLOSE。

我无法修改:从IDE中提取睾丸。它有你的“球”。这一概念的扩展。1只有使用IDE的人才会这样说。2只有使用上述IDE的GUI编辑器的人才能“为他们编写代码”。3有经验的用户手中的IDE对生成的代码没有限制,即使在使用GUI设计器时也是如此。4 Yopur注释表明您不知道如何使用IDE,因此这是实际获取最终代码的障碍。这是一个很好的建议。但我使用Swing和Netbeans,因为我所需要做的就是在考试中创建一个简单的应用程序,这样可以节省时间。真正地看看你花了多长时间来解决这个问题;我无法修改:从IDE中提取睾丸。它有你的“球”。这一概念的扩展。1只有使用IDE的人才会这样说。2只有使用上述IDE的GUI编辑器的人才能“为他们编写代码”。3有经验的用户手中的IDE对生成的代码没有限制,即使在使用GUI设计器时也是如此。4 Yopur注释表明您不知道如何使用IDE,因此这是实际获取最终代码的障碍。这是一个很好的建议。但我使用Swing和Netbeans,因为我所需要做的就是在考试中创建一个简单的应用程序,这样可以节省时间。真正地看看你花了多长时间来解决这个问题;谢谢你的建议,我想我发现了我的问题。我试图实现formWindowClose,但我需要的是formWindowClose,这样我就可以在应用程序关闭之前执行代码了。@andrethompson ofc的意思当然是。为了更清楚,我最好写一个长的表格;谢谢你的建议,我想我发现了我的问题。我试图实现formWindowClose,但我需要的是formWindowClose,这样我就可以在应用程序关闭之前执行代码了。@andrethompson ofc的意思当然是。为了更清楚,我最好写一个长的表格;