有关SWING的一些问题

MyWithComputer 2011-08-09 04:50:04
在弹出窗体中有个退出按钮,点击退出按钮是弹出一个提示框,你确定要退出吗,如果我再点第一个窗体上的退出按钮还可以弹出一个提示框,继续点继续弹出提示框,请问用什么事件可以防止多次点击按钮弹出提示框信息,谁能有比较完美的答案,给谁分,谢谢!
...全文
90 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
huntor 2011-08-09
  • 打赏
  • 举报
回复
一个java swing程序应该只有一个 JFrame,其他适当选择 JWindow/JDialog。
这里 你的主窗口可以使用 JFrame,弹出提示框使用JDialog,在构造方法方法里指定为模态,这样显示后,就不能访问主窗口了。
MyWithComputer 2011-08-09
  • 打赏
  • 举报
回复
不是用JDialog,我是想弹出提示框之后,后面的大窗口里面的按钮都是灰色的点击不了了,我是初学者不怎么懂,望高手们见谅,谢谢!
huntor 2011-08-09
  • 打赏
  • 举报
回复
你的弹出窗口是使用JDialog吗?
若是 看 Dialog的
setModal(boolean), 
setModalityType(java.awt.Dialog.ModalityType),

这两个方法。
风尘中国 2011-08-09
  • 打赏
  • 举报
回复
6楼的答案已经很清楚了,不过我想知道你具体的弹出对话框是怎么实现的?这个很重要,不多对你那个情景,采用
  int xxx = JOptionPane.showConfirmDialog(frame,
"你要退出程序吗?",
"你要退出程序吗?",
JOptionPane.YES_NO_OPTION);
已经完全足够了,楼主不至于这个都懒得试一试吧?
如果是自己实现的JDialog则无法参考6楼的代码,需要在JDialog的构造方法中指定为模态的参数

MyWithComputer 2011-08-09
  • 打赏
  • 举报
回复
怎么没有回应了,我急用,可不可以快点给我回复啊,谢谢了
MyWithComputer 2011-08-09
  • 打赏
  • 举报
回复
我需要的是窗体里面一个按钮(比如说退出按钮),可以多次点击,然后弹出多个提示框,这个和上面的有点不一样吧,希望快点解决,谢谢了
MyWithComputer 2011-08-09
  • 打赏
  • 举报
回复
确定是这样子实现吗,我试了怎么不行呢,还是可以多次点击按钮,请快点回答我,谢谢!
huntor 2011-08-09
  • 打赏
  • 举报
回复
import java.awt.Dimension;
import java.awt.EventQueue;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.swing.JFrame;
import javax.swing.JOptionPane;

public class Example {
public static void main(final String[] args) {
java.awt.EventQueue.invokeLater(new Runnable(){
public void run(){
final JFrame frame = new JFrame("Example");
frame.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
frame.setPreferredSize(new Dimension(600,400));
frame.setLocationRelativeTo(null);

frame.addWindowListener(new WindowAdapter(){
@Override public void windowClosing(WindowEvent e){
int xxx = JOptionPane.showConfirmDialog(frame,
"你要退出程序吗?",
"你要退出程序吗?",
JOptionPane.YES_NO_OPTION);
if (xxx == JOptionPane.YES_OPTION) {
frame.dispose();
System.exit(0);
}else {
return;
}
}
});

frame.pack();
frame.setVisible(true);
}
});
}
}
MyWithComputer 2011-08-09
  • 打赏
  • 举报
回复
具体是用什么方法,可以写点代码吗,不然我怎么给分啊
_了凡_ 2011-08-09
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 huntor 的回复:]

弹出模态提示框。
[/Quote]
+1
用模态的就行了。
huntor 2011-08-09
  • 打赏
  • 举报
回复
弹出模态提示框。
xjmlj2010 2011-08-09
  • 打赏
  • 举报
回复
弹出提示框之后,把原来的界面设置为不能操作就行了

51,409

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧