特曼de学习笔记 -博客 | 技术分享 - setDefaultCloseOperation
type: channel
link: https://www.yuofyou.cn/tag/setDefaultCloseOperation/
items: Java Swing(2) 在窗口上创建一个按钮JButton 与 setDefaultCloseOperation

Java Swing(2) 在窗口上创建一个按钮JButton 与 setDefaultCloseOperation
type: item
date: 2020-11-14T18:24:49+08:00
description: 按钮需要导入swing的JButtonimport javax.swing.JButton;要让按钮显示在窗口上面，Jframe也不可缺，同样需要导入swing的Jframeimport javax.swing.JFrame;为了方便使用，这里使用继承Jframe类，Source2是我自己定义的类名，extends是继承 使用三行代码将窗口的基本参数设置一下public class Source2 extends JFrame{ setTitle("test"); setSize(300,100); setVisible(true); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); }那么setDefaultCloseOperation是什么用处呢？ 如果我们将这行代码注释掉，会发现程序可以运行，也可以点击×“关闭” 但是在java控制台里显示程序并没有关闭，是真的关闭了吗？ 其实并没有关闭，只是窗口被隐藏了所以我们需要使用setDefaultCloseOperation来控制，当用户在窗体上发起close的时候的操作setDefaultCloseOperation的四个参数 DO_NOTHING_ON_CLOSE（在WindowConstants中定义）：不执行任何操作，要求程序在已注册的 WindowListener 对象的 windowClosing 方法中处理该操作 HIDE_ON_CLOSE（在WindowConstants中定义）：调用任意已注册的WindowListener对象后自动隐藏该窗体 DISPOSE_ON_CLOSE（在WindowConstants中定义）：调用任意已注册WindowListener的对象后自动隐藏并释放该窗体 EXIT_ON_CLOSE（在JFrame中定义）：使用System exit方法退出应用程序。仅在应用程序中使用。 如果不设置，默认它的值是HIDE_ON_CLOSE 一般都将它的值设置为EXIT_ON_CLOSE创建一个按钮创建一个名为b的按钮，""引号里面是按钮的标题 JButton b= new JButton("按钮");向窗口增加按钮使用add方法向窗口增加b （b就是刚刚创建的按钮） add(b);//向窗口增加b控件创建一个窗口，在窗口上面显示一个按钮import javax.swing.JButton; import javax.swing.JFrame; public class Source2 extends JFrame{ Source2(){ setTitle("test"); JButton b= new JButton("按钮"); add(b);//向窗口增加b控件 setSize(300,100); setVisible(true); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } public static void main(String[] args) { new Source2(); } }