我正在使用主JFrame和一些线程创建一个应用程序。我在我的框架上使用了一个windowslistener来检测关闭事件。但有时当我关闭应用程序(关闭大型机)时,由于线程会有延迟。似乎swing在调用windowsclosing()函数之前等待所有线程完成。这个延迟可能有点长(1-30秒)所以我想像eclipse一样显示messagedialog“关闭”,因为对于用户来说,似乎应用程序没有响应。
当用户试图关闭窗口而不是窗口实际关闭时,我怎么能得到这个事件?
对不起我的英文:)
事先提出
答案 0 :(得分:3)
您应该手动关闭线程。 并且有两个事件回调:WindowClosing和WindowClosed