展开全部
效果图
参考代码和注释如下32313133353236313431303231363533e59b9ee7ad9431333365633836import java.awt.event.*;
import javax.swing.*;
public class DemoFrame extends JFrame{
JButton jbExit;
public DemoFrame() {
jbExit = new JButton("退出");
//当点击退出 按钮时候的响应器
jbExit.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
doExit();//退出时候的方法
}
});
JPanel jp = new JPanel();
jp.add(jbExit);
add(jp);
setTitle("窗口");// 窗口标题
setSize(380, 185);// 窗口大小
setLocationRelativeTo(null);// 窗口居中
//setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//通常添加这行代码,点击窗口右下角的关闭时会结束程序
setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);//右下角的关闭,不主动采取任何行动
//当点击窗口右上角的关闭按钮时候的响应器
addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
doExit();
}
});
}
// main方法
public static void main(String[] args) {
new DemoFrame().setVisible(true);
}
//退出时候的选择
private void doExit() {
int n = JOptionPane.showConfirmDialog(null, "你确定要退出吗?", "消息提示",JOptionPane.YES_NO_OPTION);
//取消选择是 -1 ,确定是0 ,取消是1
System.out.println(n);
if(n==0) { //如果选择了确定
System.exit(0);//那么退出
}
}
}