我开发一个简单的应用程序来管理使用Swing的一个企业的运作的一部分,但我需要一个应用程序退出时,它会执行此:OnExit事件对于Swing应用程序?
updateZonas();
db.close();
但我怎么能这样做呢?
我开发一个简单的应用程序来管理使用Swing的一个企业的运作的一部分,但我需要一个应用程序退出时,它会执行此:OnExit事件对于Swing应用程序?
updateZonas();
db.close();
但我怎么能这样做呢?
Runtime.getRuntime().addShutdownHook(new Thread()
{
@Override
public void run()
{
updateZonas();
db.close();
}
});
这适用于任何Java应用程序(秋千/ AWT /控制台)
将一个WindowListener
添加到您的JFrame。它的windowClosing
方法会调用你需要的任何代码,然后System.exit(0)
(或其他一些返回码)。
您使用的是JFrame吗?如果是的话,你可以试试这个:
myframe.addWindowListener(new java.awt.event.WindowAdapter() {
public void windowClosing(WindowEvent winEvt) {
updateZonas();
db.close();
System.exit(0);
}
});
这太低级了。 – vemv 2012-11-28 18:39:18
@vemv为什么它太**低级别?当然,如果你需要在任何情况下拦截退出事件,你需要一个低级别的钩子? – MTCoster 2013-06-11 18:32:35