Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/346.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_Jframe - Fatal编程技术网

手动关闭java swing窗口

手动关闭java swing窗口,java,swing,jframe,Java,Swing,Jframe,我有一个小游戏,游戏结束时一个窗口打开另一个窗口。 我只想关闭游戏窗口 this.dispatchEvent(new WindowEvent(this, WindowEvent.WINDOW_CLOSING)); 但这会关闭两个窗口。 如何仅关闭第二个窗口?它可以通过窗口本身从游戏中关闭 this.dispose(); 或者被 this.setVisible(false); 您还可以通过假设JDialog(默认值为HIDE\u ON\u CLOSE)来更改关闭行为 如果需要从父JFram

我有一个小游戏,游戏结束时一个窗口打开另一个窗口。 我只想关闭游戏窗口

this.dispatchEvent(new WindowEvent(this, WindowEvent.WINDOW_CLOSING)); 
但这会关闭两个窗口。
如何仅关闭第二个窗口?

它可以通过窗口本身从游戏中关闭

this.dispose();
或者被

this.setVisible(false);
您还可以通过假设JDialog(默认值为HIDE\u ON\u CLOSE)来更改关闭行为

如果需要从父JFrame关闭它,不要使用它,而是以对象为目标

gameOverDialog.dispose();

它可以通过窗口本身关闭游戏

this.dispose();
或者被

this.setVisible(false);
您还可以通过假设JDialog(默认值为HIDE\u ON\u CLOSE)来更改关闭行为

如果需要从父JFrame关闭它,不要使用它,而是以对象为目标

gameOverDialog.dispose();

它是JFrame还是JDialog?还有什么吗?人们需要停止使用dispatchEvent,这是对AWT时代的一种倒退。dispose或setVisible更可取,因为它们向不同的侦听器提供额外的事件通知,并执行与关闭窗口相关的额外任务correctly@MadProgrammer谢谢dispose方法是我需要的。它是JFrame还是JDialog?还有什么吗?人们需要停止使用dispatchEvent,这是对AWT时代的一种倒退。dispose或setVisible更可取,因为它们向不同的侦听器提供额外的事件通知,并执行与关闭窗口相关的额外任务correctly@MadProgrammer谢谢处理方法是我需要的。谢谢。这就是处置;这是我需要的。谢谢。这就是处置;这就是我需要的。