1.使用JFrame的enableEvents和processWindowEvent

//Frame1.java

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

public class Frame1 extends JFrame {

public Frame1() {

enableEvents(AWTEvent.WINDOW_EVENT_MASK);

this.setSize(new Dimension(400, 300));

this.setTitle("Frame1");

}

protected void processWindowEvent(WindowEvent e) {

super.processWindowEvent(e);

if (e.getID() == WindowEvent.WINDOW_CLOSING) {

System.exit(0);

}

}

}

2.直接实现WindowListener接口

//Frame1.java

import java.awt.*;

import java.awt.event.*;

public class Frame1 extends Frame implements WindowListener {

public Frame1() {

this.setSize(new Dimension(400, 300));

this.setTitle("Frame1");

this.addWindowListener(this);

}

public void windowClosing(WindowEvent windowEvent) {

System.exit(0);

}

public void windowOpened(WindowEvent windowEvent) {  }

public void windowClosed(WindowEvent windowEvent) {  }

public void windowIconified(WindowEvent windowEvent) {  }

public void windowDeiconified(WindowEvent windowEvent) {  }

public void windowActivated(WindowEvent windowEvent) {  }

public void windowDeactivated(WindowEvent windowEvent) {  }

}

3.直接继承窗体适配器WindowAdapter

//Frame1.java

import java.awt.*;

import java.awt.event.*;

public class Frame1 extends  WindowAdapter {

public Frame1() {

Frame f=new Frame();

f.setSize(new Dimension(400, 300));

f.setTitle("Frame1");

f.addWindowListener(this);

f.setVisible(true);

}

public static void main(St

java中AWT如何关闭窗口_java 窗口关闭的六种方法相关推荐

  1. java中for break的用法_java break语句的使用方法

    在switch语中,break语句用来终止switch语句的执行.使程序 switch语句后的第一个语句 开始执行. 在Java中,可以为每个代码块加一个括号,一个代码块通常 用大括号{}括起来的一段 ...

  2. java中的case1怎么说_Java 中的 CAS 简述及原理解析

    一.CAS 是什么? CAS(Compare And Swap),比较并交换,它是一条CPU并发原语.它的功能是判断内存某个位置的值是否为预期值,如果是则更新为新的值,这个过程是原子的.1 publi ...

  3. 转:Java中子类是否可以继承父类的static变量和方法而呈现多态特性

    原文地址:Java中子类是否可以继承父类的static变量和方法而呈现多态特性 静态方法 通常,在一个类中定义一个方法为static,那就是说,无需本类的对象即可调用此方法,关于static方法,声明 ...

  4. java整型转换为数组_基于java中byte数组与int类型的转换(两种方法)

    java中byte数组与int类型的转换,在网络编程中这个算法是最基本的算法,我们都知道,在socket传输中,发送.者接收的数据都是 byte数组,但是int类型是4个byte组成的,如何把一个整形 ...

  5. Java中url传递中文参数取值乱码的解决方法

    Java中url传递中文参数取值乱码的解决方法 参考文章: (1)Java中url传递中文参数取值乱码的解决方法 (2)https://www.cnblogs.com/liwenjuan/p/3211 ...

  6. JAVA中的多线程(八):线程的优先级和yield方法

    JAVA中的多线程(八):线程的优先级和yield方法 优先级代表着抢资源的频率 所有线程默认优先级是5 yield()临时释放线程的执行权 1 class Demo implements Runna ...

  7. java中给对象的List集合去重的几种方法(Lambda)

    java中给对象的List集合去重的几种方法 前言 一.lambda表达式的去重方式 二.Stream API中的collect去重方法 三.Stream API 中的distinct方法去重 前言 ...

  8. 在java中通过过键盘输入_java中从键盘输入

    控制台输入数据 1.1 主方法的形式参数 在 Java 中利用 main(Str... Java中获取键盘输入值的三种方法 2012-11-13 00:00比特网悠虎关键字:Java 程序开发过程中, ...

  9. java中的命令行参数_Java中的命令行参数

    java中的命令行参数 Command-line arguments in Java are used to pass arguments to the main program. If you lo ...

  10. java中什么是线程安全_Java 多线程:什么是线程安全性

    线程安全性 什么是线程安全性 <Java Concurrency In Practice>一书的作者 Brian Goetz 是这样描述"线程安全"的:"当多 ...

最新文章

  1. 目标检测中的尺度--An Analysis of Scale Invariance in Object Detection – SNIP
  2. Windows下Git Bash 远程仓库
  3. c语言对齐方式研究笔记
  4. 【Android UI设计与开发】第16期:滑动菜单栏(一)
  5. Origin如何绘制泡泡图?
  6. HTML5实现文件断点续传
  7. idea中开启Run Dashboard
  8. 如何使用 C# 中的 ValueTuple
  9. c mvc ajax 返回下拉框,SpringMVC之ajax+select下拉框交互常用方式
  10. 大数据统计学之概率论(三)
  11. !--more--搭建的博客设置主页内容高度
  12. 苹果通过电商渠道降价20天后,iPhone在中国销量猛增八成
  13. CSS3 Transition介绍
  14. 【SCOI2005】【BZOJ1083】繁忙的都市(MST模板)
  15. lua 文件读写处理(操作敏感词库)
  16. java超市管理系统增删改查,超市管理系统java程序设计报告(图文完整)
  17. 如何在UEFI模式下安装Linux,详解 UEFI 模式下安装 Linux
  18. 关于trycatchfinal返回值问题
  19. 梁念坚致辞Tech ED2009 主推Windows7
  20. python 计算开平方数

热门文章

  1. 【Driver】协作安装程序
  2. c++ 编译代码时Link失败,无法关闭目标文件
  3. 最新网卡驱动下载win7
  4. 自己手动复现一个熊猫烧香病毒
  5. Echarts实现成都市地图下钻
  6. 一款好用的日报管理系统“拍了拍”你,手把手教你如何写日报
  7. java企业员工管理系统_java企业员工考勤管理系统
  8. Ubuntu 安装fish
  9. 交叉火力dsp手机调音软件_dsp教程_交叉火力dsp调音教程_教你学dsp百度云(2)
  10. 圈圈教你玩usb第一版件软件使用说明