Comment remplacer windowsClosing événement dans JFrame

je suis l'élaboration d'une JFrame qui a un bouton pour afficher une autre JFrame. Sur la deuxième JFrame je veux remplacer WindowsClosing événement pour cacher cette image, mais pas de fermer toutes les applications. Donc, je fais comme ceci:

Sur la deuxième JFrame

addWindowListener(new java.awt.event.WindowAdapter() {
    public void windowClosing(java.awt.event.WindowEvent evt) {
         formWindowClosing(evt);
    }
});

private void formWindowClosing(java.awt.event.WindowEvent evt) {
    this.dispose();
}

mais demande encore près lorsque je clique sur x sur le bouton windows. pourquoi? pouvez-vous m'aider?

Je ne peux pas utiliser

setDefaultCloseOperation(DISPOSE_ON_CLOSE);

parce que j'ai besoin de montrer à nouveau que JFrame avec de l'information supplémentaire pendant les opérations de première JFrame. J'ai donc init deuxième JFrame avec l'attribut visible false. si j'utilise jetez-je perdre les informations ajoutées dans un deuxième temps, par l'autre JFrame. j'ai donc utiliser

private void formWindowClosing(java.awt.event.WindowEvent evt) {
    this.setVisible(false);
}

mais il continue toujours à mettre fin à l'ensemble de mon application.

OriginalL'auteur JackTurky | 2012-03-15