Fermeture programmatique d'un JFrame
En plus de fermer un JFrame via une interaction de l'utilisateur, par exemple en cliquant sur le bouton X ou en appuyant sur Alt F4, il existe des cas où vous souhaiterez peut-être déclencher ce comportement par programme. Cet article explique comment obtenir cette fonctionnalité.
Approche WindowListener personnalisée
Une approche consiste à étendre la classe WindowAdapter et à remplacer la méthode windowClosing(). Lorsque vous ajoutez une instance de cet adaptateur aux écouteurs du JFrame, il vous permet de capturer et de répondre à l'événement de fermeture de la fenêtre.
import java.awt.event.*; class MyWindowListener extends WindowAdapter { @Override public void windowClosing(WindowEvent e) { e.getWindow().dispatchEvent(new WindowEvent(e.getWindow(), WindowEvent.WINDOW_CLOSED)); } }
Élimination du JXFrame
Un Une méthode alternative consiste à utiliser la classe JXFrame, qui étend JFrame et fournit la méthode dispose(). Lorsqu'elle est invoquée, cette méthode déclenche un événement de fermeture de fenêtre puis libère les ressources associées au cadre.
import com.pagosoft.plaf.*; JXFrame myFrame = new JXFrame(); myFrame.dispose();
Diffusion d'un événement de fermeture de fenêtre
La manière la plus directe simuler la fermeture d'un JFrame consiste à envoyer un événement de fermeture de fenêtre directement au cadre. Ceci peut être réalisé en utilisant la classe WindowEvent, en spécifiant WindowEvent.WINDOW_CLOSING comme type d'événement.
import java.awt.event.WindowEvent; frame.dispatchEvent(new WindowEvent(frame, WindowEvent.WINDOW_CLOSING));
En tirant parti de l'une de ces approches, vous pouvez lancer par programme la séquence de fermeture d'un JFrame, comme si l'utilisateur avait fermé manuellement via le bouton X ou des raccourcis clavier.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!