سؤال

أقوم بتطوير تطبيق بسيط لإدارة الجزء التشغيلي من شركة ما باستخدام 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) (أو بعض رمز الإرجاع الآخر).

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top