找回密码
 立即注册
收起左侧

QMessageBox的关闭问题

2
回复
1638
查看
[复制链接]

尚未签到

来源: 2022-10-28 11:23:45 显示全部楼层 |阅读模式
1Qter豆
我想做一个应用界面的关闭效果,大致是这样的:点击主窗口右上角的关闭后,会弹出一个提醒对话框询问是关闭还是最小化。我具体是这样做的,改写了closeEvent函数:void MainWindow::closeEvent(QCloseEvent *e),窗口关闭时会新建一个QMessageBox的提醒框。


现在出现了一个这样的问题,点击QMessageBox窗口右上角的关闭时,应该时仅关闭QMessageBox窗口才对,但它却连同我的主窗口也一起关闭了糟糕透了,我想问问各位前辈、老师,这个问题应该怎样去解决?谢谢大家!



附件: 您需要 登录 才可以下载或查看,没有帐号?立即注册

最佳答案

查看完整内容

直接这么写:
回复

使用道具 举报

累计签到:2439 天
连续签到:4 天
2022-10-28 11:23:46 显示全部楼层
直接这么写:
  1. void closeEvent(QCloseEvent *event)
  2. {
  3.     int ret = QMessageBox::information(this,
  4.                                        "关闭提示",
  5.                                        "您点击了关闭按钮,您是想:",
  6.                                        "最小化到托盘",
  7.                                        "退出程序");
  8.     if(ret == 0) {
  9.         qDebug() << "最小化到托盘";
  10.         event->ignore();
  11.     } else {
  12.         qDebug() << "退出程序";
  13.         event->accept();
  14.     }
  15. }
复制代码
参与人数 1人气 +2 收起 理由
xiaoXiaoZhou + 2 对我帮助很大!非常感谢

查看全部评分总评分 : 人气 +2

回复

使用道具 举报

尚未签到

2022-10-31 09:54:23 显示全部楼层




可以了可以了,这样好像就是禁用那个关闭按钮,我想要的效果实现了。谢谢老师!:lol

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了