Partage
  • Partager sur Facebook
  • Partager sur Twitter

Traitement à la fermeture d'une application

    27 mai 2009 à 14:55:08

    Je voudrais associer un appel de fonction (Déconnection d'une base de donnée) à la fermeture d'une application. Je ferme l'application grâce à la croix en haut droite de mon frame.

    Serait-il possible je vous prie d'avoir un exemple de code.

    Cordialement
    Merci
    • Partager sur Facebook
    • Partager sur Twitter
      27 mai 2009 à 15:04:56

      Il y a 2 éléments à prendre en compte :

      - Sur ta JFrame, la méthode setDefaultCloseOperation

      Exemple :

      JFrame myWindow = new JFrame();
      myWindow.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
      


      Explication :

      Tu souhaites gérer un comportement personnalisé lorsque la fenêtre est fermée. Cette méthode te permet donc de désactiver le comportement par défaut.

      - Sur ta JFrame, toujours, ajouter un "WindowListener", qui captera et traitera les évènements reçus par ta fenêtre (En l'occurence, la fermeture de la fenêtre), via la méthode addWindowListener

      Exemple :

      myWindow.addWindowListener(new MyCustomWindowListener());
      


      La classe MyCustomWindowListener doit avoir la forme minimale suivante :

      public class MyCustomWindowListener extends WindowAdapter{
            public void windowClosed(WindowEvent e){
                  //Les traitements à effectuer avant de quitter le programme
                  System.exit(0); //On quitte le programme quand la fenêtre est fermée, parce qu'on a désactivé le comportement par défaut
            }
      }
      


      (A noter qu'on peut également mettre le comportement par défaut EXIT_ON_CLOSE, et mettre les traitements à effectuer avant dans la méthode windowClosing(...). Le DO_NOTHING_ON_CLOSE permet surtout de mettre un dialogue "Êtes-vous sûr de vouloir quitter ?" (Ce qui permet d'annuler le quittage, chose impossible avec un EXIT_ON_CLOSE)).
      • Partager sur Facebook
      • Partager sur Twitter
        27 mai 2009 à 15:11:13

        Thanks a lot, c'est très gentil de ta part.
        • Partager sur Facebook
        • Partager sur Twitter

        Traitement à la fermeture d'une application

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown