21xrx.com
2024-09-19 09:36:24 Thursday
登录
文章检索 我的文章 写文章
如何用Java实现关闭当前窗口
2023-06-14 08:33:27 深夜i     --     --
Java 关闭当前窗口 System

在Java应用程序开发中,经常需要关闭当前窗口。本文将介绍如何使用Java代码实现关闭当前窗口的功能。

Java代码实现关闭当前窗口的方法有两种:使用System.exit()方法和使用WindowEvent事件。以下是使用System.exit()方法的示例代码:


import javax.swing.JFrame;

 

public class CloseWindowExample extends JFrame {

  public CloseWindowExample() {

    setTitle("关闭窗口示例");

    setSize(350, 250);

    setLocationRelativeTo(null);

    setDefaultCloseOperation(EXIT_ON_CLOSE);

    setVisible(true);

  }

  public static void main(String[] args) {

    new CloseWindowExample();

  }

  @Override

  public void setDefaultCloseOperation(int operation) {

    //创建匿名内部类

    super.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);

    addWindowListener(new java.awt.event.WindowAdapter() {

      public void windowClosing(java.awt.event.WindowEvent windowEvent) {

        if (javax.swing.JOptionPane.showConfirmDialog(getContentPane(),

            "确定要退出吗?", "关闭窗口示例", javax.swing.JOptionPane.YES_NO_OPTION) ==

            javax.swing.JOptionPane.YES_OPTION) {

          System.exit(0);//正常退出程序

        }

      }

    });

  }

}

上述代码使用了JFrame类的addWindowListener()方法,监听了窗口关闭事件,当用户点击关闭按钮时会弹出对话框提示用户是否要退出程序。如果用户选择是,则调用System.exit(0)方法关闭程序;如果用户选择否,则程序继续运行不会关闭。

除了System.exit()方法外,还可以使用WindowEvent事件来实现关闭当前窗口的功能。以下是示例代码:


import java.awt.Frame;

import java.awt.event.WindowAdapter;

import java.awt.event.WindowEvent;

 

public class CloseWindowExample {

 

  public static void main(String[] args) {

    Frame frame = new Frame("关闭窗口示例");

    frame.setSize(350, 250);

    //添加WindowListener监听器

    frame.addWindowListener(new WindowAdapter() {

      //窗口关闭方法

      public void windowClosing(WindowEvent we) {

        System.out.println("窗口关闭");

        frame.dispose();

        System.exit(0);

      }

    });

    frame.setVisible(true);

  }

}

使用WindowEvent事件的方式与使用System.exit()方法相比,代码更为简单。在这个示例中,我们创建了一个Frame窗口,并使用addWindowListener()方法监听了窗口关闭事件。当用户点击关闭按钮时,窗口关闭方法将被触发,我们可以在此处编写自己的程序代码以实现窗口关闭时的额外操作。

.exit()、WindowEvent事件。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复