我正在开发一个简单的应用程序来使用Swing管理业务的运营部分,但我需要在应用程序退出时执行此操作:
updateZonas();
db.close();
但我怎么能这样做?
答案 0 :(得分:33)
Runtime.getRuntime().addShutdownHook(new Thread()
{
@Override
public void run()
{
updateZonas();
db.close();
}
});
这适用于任何Java应用程序(Swing / AWT / Console)
答案 1 :(得分:28)
您使用的是JFrame吗?如果是这样,你可以试试这个:
myframe.addWindowListener(new java.awt.event.WindowAdapter() {
public void windowClosing(WindowEvent winEvt) {
updateZonas();
db.close();
System.exit(0);
}
});
答案 2 :(得分:7)
向您的JFrame添加WindowListener
。它的windowClosing
方法会调用您需要的任何代码,然后调用System.exit(0)
(或其他一些返回代码)。