本文介绍了处置()是不一样的setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我注意到,如果 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)设置,关闭框将结束其在任务管理器的过程,但如果我实现的WindowListener和手动配置()该帧,进程仍将......可能是因为在
新的Runnable()我有这样的事情:

I noticed that if setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE) is set, closing the frame will end its Process in Task Manager, but if i implement WindowListener and manually dispose() the frame, Process will remain... probably because innew Runnable() i have something like this:

new Runnable() {
    void run() {
    Jsch tunnel=new Jsch();
    JFrame frame=new JFrame();
    frame.addWindowListener(new WindowListener() { frame.dispose(); } ); // imagine that this is legal
    frame.setVisible(true);
    }
}

谁能告诉我,如何手动终止某些应用程序创建的进程?

Anyone can tell me, how to manually end process created by some application?

推荐答案

从 API文档。


      
  • EXIT_ON_CLOSE(在JFrame中定义):退出使用系统退出方法的应用程序。只有在应用程序中使用此功能。

  •   

所以要强制退出呼叫 System.exit(0);

So to force an exit call System.exit(0);.

当所有顶级窗口设置,AWT事件调度线程可以关闭(如果需要一个新的可以创造)。当有留在过程中没有非守护线程,它会退出。

When all top level windows are disposed, the AWT Event Dispatch Thread can be shut down (a new one can be create if needed). When there are no non-daemon threads left in the process, it will exit.

这篇关于处置()是不一样的setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-23 07:07