سؤال
أقوم بتطوير تطبيق بسيط لإدارة الجزء التشغيلي من شركة ما باستخدام Swing ، لكنني بحاجة إلى ذلك عندما يخرج التطبيق ، فإنه يؤدي هذا:
updateZonas();
db.close();
ولكن كيف يمكنني فعل هذا؟
المحلول
Runtime.getRuntime().addShutdownHook(new Thread()
{
@Override
public void run()
{
updateZonas();
db.close();
}
});
هذا يعمل مع أي تطبيق Java (Swing/AWT/Console)
نصائح أخرى
هل تستخدم jframe؟ إذا كان الأمر كذلك يمكنك تجربة هذا:
myframe.addWindowListener(new java.awt.event.WindowAdapter() {
public void windowClosing(WindowEvent winEvt) {
updateZonas();
db.close();
System.exit(0);
}
});
أضف WindowListener
إلى JFrame الخاص بك. إنه windowClosing
ستتصل الطريقة بأي رمز تحتاجه ، ثم System.exit(0)
(أو بعض رمز الإرجاع الآخر).
لا تنتمي إلى StackOverflow