我開發一個簡單的應用程序來管理使用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