在Java Swing中,当我们点击窗口的关闭按钮时,JFrame窗口并不会直接关闭。相反,它会触发一个关闭事件,我们可以在这个事件中实现我们想要的行为。
要实现JFrame的关闭事件,可以使用WindowAdapter类和WindowEvent类。具体实现步骤如下:
创建一个JFrame对象。
给JFrame对象添加WindowListener对象,并重写它的windowClosing()方法。
在windowClosing()方法中实现窗口关闭时的操作,例如隐藏窗口、保存数据或退出程序等。
下面是示例代码:
import javax.swing.*;
import java.awt.event.*;
public class MyFrame extends JFrame {
public MyFrame() {
// 设置窗口标题
setTitle("My JFrame");
// 添加窗口关闭监听器
addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
// 在窗口关闭时执行的操作
setVisible(false); // 隐藏窗口
dispose(); // 释放窗口相关资源
System.exit(0); // 退出程序
// 设置窗口大小和位置
setSize(400, 300);
setLocationRelativeTo(null);
// 显示窗口
setVisible(true);
public static void main(String[] args) {
new MyFrame();
在这个示例中,我们重写了WindowAdapter类的windowClosing()方法,并在其中实现了隐藏窗口、释放窗口相关资源和退出程序等操作。这样,在我们点击窗口的关闭按钮时,它就会触发这个方法,从而执行我们想要的操作。