java swing中怎么实现点击jframe的关闭按钮后,弹出提示框?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java swing中怎么实现点击jframe的关闭按钮后,弹出提示框?相关的知识,希望对你有一定的参考价值。
如上图,点击红色关闭按钮,实现弹出下面对话框,提示是否要退出程序?
用到JOptionPane.showConfirmDialog方法,showConfirmDialog 的返回类型是int,定义一个int类型的变量接收返回值,然后根据业务逻辑判断,代码看不懂,可以自行百度搜索或问同事,编程注重思想。
import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
public class JButtonTest extends JFrame
public static void main ( String[] args )
JButtonTest b = new JButtonTest ();
b.addWindowListener (new WindowAdapter ()
@Override
public void windowClosing ( WindowEvent e )
int exi = JOptionPane.showConfirmDialog (null, "要退出该程序吗?", "友情提示", JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE);
if (exi == JOptionPane.YES_OPTION)
System.exit (0);
else
return;
);
b.setSize (300, 300);
b.setLocationRelativeTo (null);
b.setDefaultCloseOperation (JFrame.DO_NOTHING_ON_CLOSE);
b.setVisible (true);
参考技术A
给整个JFrame添加个监视器
f.addWindowListener(new WindowAdapter()public void windowClosing(WindowEvent we)
int ret = JOptionPane.showConfirmDialog(null, "确定不玩了吗?","Attention",JOptionPane.OK_OPTION);
if(ret==JOptionPane.OK_OPTION)
System.exit(0);
);本回答被提问者采纳 参考技术B
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
public class JButtonTest extends JFrame
public static void main ( String[] args )
JButtonTest b = new JButtonTest ();
b.addWindowListener (new WindowAdapter ()
@Override
public void windowClosing ( WindowEvent e )
int exi = JOptionPane.showConfirmDialog (null, "确定不玩了么?", "友情提示", JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE);
if (exi == JOptionPane.YES_OPTION)
System.exit (0);
else
return;
);
b.setSize (300, 300);
b.setLocationRelativeTo (null);
b.setDefaultCloseOperation (JFrame.DO_NOTHING_ON_CLOSE);
b.setVisible (true);
java swing问题:JFrame根面板不透明且可见,内容面板不透明且可见,层面板透明且可见,
java swing问题:JFrame根面板不透明且可见,内容面板不透明且可见,层面板透明且可见,玻璃面板透明且不可见,我设置了根面板和内容面板透明,应该只显示一个框架啊,为什么还是显示一个面板?
jframe不透明,所以会显示它的框及框内的东西。里面的东西透明,所以不会显示,最后就剩jframe本身了(你看到的面板就是jframe的内容了,是不可能透明的) 参考技术A 你是怎么设置根面板透明的?追问使用setOpaque()方法
参考技术B 你在搞笑吗追问JFrame不是由JRootPane组成的吗,我设置以及它的子面板透明,难道不行吗
参考技术C 你的顺序可能有问题,可以详细讨论下?追问先内容面板setOpaque(false)
然后根面板setOpaque(false)
以上是关于java swing中怎么实现点击jframe的关闭按钮后,弹出提示框?的主要内容,如果未能解决你的问题,请参考以下文章
java swing中怎么自由设置鼠标的样式(小手,十字,等待.....)