Événement de la fermeture d'une fenêtre

Résolu
eplanet Messages postés 112 Date d'inscription dimanche 6 juin 2004 Statut Membre Dernière intervention 19 septembre 2007 - 4 juil. 2007 à 12:00
eplanet Messages postés 112 Date d'inscription dimanche 6 juin 2004 Statut Membre Dernière intervention 19 septembre 2007 - 4 juil. 2007 à 13:39
Bonjour, je voudrais afficher un message de confirmation lorsque l'utilisateur clique sur la croix rouge de la barre de menu. Il faut donc que je récupère l'événement de fermeture de la fenêtre mais je n'ai pas trouvé comment faire, quelqu'un pourrait-il m'éclairer sur  ce sujet ? :)

Merci à tous.

Vince

4 réponses

cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
4 juil. 2007 à 12:44
Passe par un WindowListener à appliquer à ta JFrame, et intercepte l'événement windowClosing.
3
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
4 juil. 2007 à 13:21
Il te suffit de ne pas lui dire de faire la fenêtre au closing (dans le constructeur de ta JFrame par exemple) :
setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);

Ce sera alors à toi de faire ce que t'as besoin de faire dans l'événement windowClosing par contre !
1
eplanet Messages postés 112 Date d'inscription dimanche 6 juin 2004 Statut Membre Dernière intervention 19 septembre 2007
4 juil. 2007 à 13:02
Bonjour et merci pour la réponse. Je viens d'implémenter un WindowListener comme tu me l'as suggéré. Cependant, cela ne fonctionne pas tout à fait comme je le souhaite, la méthode windowClosing est bien appelée à la fermeture de la fenêtre, mais après l'appel de cette méthode, la fenêtre se ferme automatiquement. Or, je voudrais contrôler cette fermeture via ma boite de dialogue qui s'ouvre. Il faudrait donc maintenant désactiver cette fermeture automatique de la fenêtre lors de l'appui sur la croix rouge... Ainsi, je pourrais contrôler moi-même la fermeture de l'application avec un System.exit(0).

Quelqu'un saurait-il comment faire ?

Vince
0
eplanet Messages postés 112 Date d'inscription dimanche 6 juin 2004 Statut Membre Dernière intervention 19 septembre 2007
4 juil. 2007 à 13:39
Ca marche nikel, merci beaucoup ! :)

Vince
0
Rejoignez-nous