java - 如何启动一个新窗口(自身的副本)然后独立关闭每个窗口?在java中

标签 java swing

我希望我的程序能够启动其自身的另一个副本,这个

new Thread(){
     public void run() {
             main.main(new String[]{});
     }
}.start();

是我迄今为止所拥有的。它有效。 (main.java 中的主类启动程序的其余部分,并在整个一般操作中为后端提供服务)。

<小时/>

现在,当我按下任何窗口上的关闭按钮时,它会将它们全部关闭。想要的效果是只关闭一个。

我已经尝试过使用 Application.ExitListener 进行各种操作,但没有任何乐趣,我还尝试使用替代方法打开新窗口:

main s = new main();
s.main(new String[]{});

我正在考虑获取文件路径,然后简单地从那里获取它 Runtime.getRuntime().exec(); 本身。通过这次尝试,我能够正确获取路径,但无法获取 .jar 文件的名称。

最佳答案

Now though, when I press the close button on any of the windows, it will close them all down

听起来您正在使用:

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

应该是:

frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);

关于java - 如何启动一个新窗口(自身的副本)然后独立关闭每个窗口?在java中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4179344/

相关文章:

java - GIF 在游戏鼠标移动时停止动画

java - Spring 数据JPA : Saving nested OneToMany children (with cascading) returns NULL parent foreign object

java - 如何在 libgdx 中让 Actor 留在舞台内?

java - 我们如何处理 RecyclerView 中来自多个项目 View 的点击?

java - 查找 XML 标记值的正确正则表达式 - java

Java 设置窗口的 "Document"

Java Swing 定时器倒计时

java - 创建 bufferedimage 仅保存 Panel 背景,而不保存其上绘制的内容

java - Java 中的 Action 事件

java - 停止请求焦点的 jframe