2010-11-14 51 views
1

我想我的程序能够推出自己的另一个副本,这如何启动一个新窗口(自身的副本),然后独立关闭每个窗口?在java中

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文件的名称。

回答

1

不过现在,当我按在任何窗口的关闭按钮,将它们全部关闭

听起来你正在使用:

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 

,应该是:

frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); 
+0

我按照你的建议实施了一些问题,但是从你说的我现在最终使用getFrame ().dispose();在一个ExitListener中,无论如何我都有其他的东西。 – cupAsoup 2010-11-15 17:01:25

相关问题