setDefaultCloseOperation

setDefaultCloseOperation

我想让我的Java应用程序在按下“关闭”十字按钮时调用自己的定制函数。据我所见,由于setDefaultCloseOperation根本没有重载,因此可能没有办法。

知道如何实现吗?

最佳答案

以上所有建议都是正确的,因为您需要使用WindowListener。

但是,所有答案也不完整,因为它们忘记提及您可能还想添加:

frame.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
frame.addWindowListener(...);

这将允许您的代码完全控制窗口关闭过程,因为除非您告知窗口关闭(通常通过在框架上使用dispose()方法),否则窗口不会自动关闭。这使您可以提示用户确认关闭窗口。

Closing an Application有一个简单的API,可让您创建一个在关闭窗口时执行的简单Action。它为您管理关闭操作和窗口侦听器代码。

09-12 12:19