c++ qt 模态框和阻拦器 优先级 问题 修复 已解决

                

在c++项目中。有 加载动画 和 模态框提醒的功能, 导致发生一个问题,有提示框的时候,动画也停止,必须点击 按钮 所有代码才能有效。

        

解决办法

        谨慎使用 deleteLater,因为和模态框拦截有冲突, 使用 隐藏 或者 删除指针。

        deleteLater 使用逻辑是 走的事件删除,但是需要中,早已把事件 拦截导致无法关闭动画,

感谢同事,基础知识扎实,一起帮忙解决问题,一个是事件和队列 配合删除 一个是 直接摧毁。

void xxxxxxxx::removeUseCount()
{if (s_pLoadIndicator == nullptr){return;}else{int iUseCount = xxxxxxxx->useCountDecrease();if (iUseCount <= 0){s_pLoadIndicator->deleteLater();s_pLoadIndicator = nullptr;}}
}void xxxxxxxx::removeUseDelete()
{if (s_pLoadIndicator == nullptr){return;}else{int iUseCount = xxxxxxxx->useCountDecrease();if (iUseCount <= 0){delete s_pLoadIndicator;s_pLoadIndicator = nullptr;}}
}

        Qt5 -- 超好用的"deleteLater()" - 知乎

        QT delete和deletelater的区别-CSDN博客

答案在文档中

      

计划删除此对象。

        当控件返回到事件循环时,对象将被删除。如果调用此函数时事件循环未运行(例如,在QCoreApplication::exec()之前对对象调用deleteLater()),则一旦事件循环启动,该对象将被删除。如果在主事件循环停止后调用deleteLater(),则不会删除该对象。自Qt 4.8以来,如果在没有运行事件循环的线程中调用deleteLater()对象,则该对象将在线程结束时被销毁。

        请注意,进入和离开新的事件循环(例如,通过打开模式对话框)将不会执行延迟删除;对于要删除的对象,控件必须返回到调用deleteLater()的事件循环。这不适用于在上一个嵌套事件循环仍在运行时删除的对象:新的嵌套事件循环一开始,Qt事件循环就会删除这些对象。

衍生出来的问题, 线程和安全的问题

Java并发-线程与进程、线程安全、锁、阻塞队列详解,看这一篇就够了_java 进程锁-CSDN博客

PHP开发中如何优化并发操作和线程安全-php教程-PHP中文网

参考分析

        qt事件循环阻塞机制分析_使用阻塞的exec调用 qt-CSDN博客

        Qt互斥锁(QMutex)的使用、QMutexLocker的使用(含源码+注释) - 知乎

        Qt消息循环与模态对话框和线程关系整理_qdialog能接受主线程-CSDN博客

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/237995.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

狮子目标检测数据集VOC+YOLO格式1400张

狮子&#xff08;Lion&#xff09;是一种生活在非洲和印度的大型猫科动物。它们是一种非常强壮和威猛的动物&#xff0c;通常被称为“草原之王”。狮子的身体结构非常适应于它们的生活方式&#xff0c;有着强壮的肌肉和锋利的牙齿。 狮子的身高一般在1.2-1.5米之间&#xff0c…

【保姆级教程】使用Mediapipe进行Face Landmark Detection实践和Hand Landmark实践

目录 1 Mediapipe 2 Solutions 3 安装依赖库 4 实践 1 Mediapipe Mediapipe是google的一个开源项目,可以提供开源的、跨平台的常用机器学习(machine learning,ML)方案。MediaPipe是一个用于构建机器学习管道的框架,用于处理视频、音频等时间序列数据。与资源消耗型的机…

依托亚马逊云科技构建韧性应用

背景 现代业务系统受到越来越多的韧性相关的挑战&#xff0c;特别是客户要求他们的业务系统 724 不间断的运行。因此&#xff0c;韧性对于云的基础设施和应用系统有着至关重要的作用。 亚马逊云科技把韧性视为一项最基本的工作&#xff0c;为了让我们的业务系统能持续优雅地提供…

建构伦敦银交易策略可遵循的三个原则

构建交易策略&#xff0c;我们应该遵循什么原则呢&#xff1f;有的人说可以盈利就行了&#xff0c;确实盈利是很关键的&#xff0c;没有人想使用一个导致自己亏损的策略。但构建伦敦银策略的时候可不能简单地以一个可以盈利带过&#xff0c;下面我们就来介绍构建策略时所需的三…

Python实现接口测试总结--PyMySql库+封装

import pymysql # 封装数据库工具类 class DBUtil ( object ): # 添加类属性 conn None classmethod def __get_conn ( cls ): # 判断 conn 是否为空&#xff0c;如果是&#xff0c;创建 if cls . conn is None : cls . conn pymysql . connect ( host…

java 项目日记实现两种方式:拦截器方式实现日记与定义日记注解方式实现日记

通常只要是java web项目基本都离不开项目日记&#xff0c;项目日记存在的意义很多&#xff0c;例如&#xff1a;安全审计&#xff0c;问题追踪都离不开项目日记。下面我们说一下项目日记实现最常用的两种方式 。 一 拉截器实现项目日记 1 实现一个拦截器基类&#xff0c;用于事…

逻辑斯蒂回归-建模概率计算(鸢尾花)

导入的数据说明 因为气候不同&#xff0c;造就性不同&#xff0c;统计鸢尾花的关键特征数据&#xff1a;花萼长度、花萼宽度、花瓣长度&#xff0c;花瓣宽度 植物学家划分&#xff1a; setosa(中文名&#xff1a;山鸢尾) versicolor(中文名&#xff1a;杂色鸢尾) virginica(中…

小鹅通基于 TSE 云原生 API 网关的落地实践

导语 2023腾讯全球数字生态大会已于9月7-8日完美落幕&#xff0c;40专场活动展示了腾讯最新的前沿技术、核心产品、解决方案。 微服务与消息队列专场&#xff0c;我们邀请到了小鹅通的基础架构组负责人黄徐震为我们带来了《小鹅通基于 TSE 云原生网关的落地实践》的精彩演讲。…

鹦鹉目标检测数据集VOC+YOLO格式2000张

鹦鹉是一种非常受欢迎的鸟类&#xff0c;它们通常生活在热带和亚热带地区的森林和草原中。鹦鹉是一种非常聪明、有趣和亲密的动物&#xff0c;也是一种受到广泛关注和保护的物种。 鹦鹉的身体结构非常适应于它们的生活方式。它们的身体非常修长&#xff0c;有着漂亮的羽毛和强…

flutter开发windows应用的库

一、window_manager 这个插件允许 Flutter 桌面应用调整窗口的大小和位置 地址&#xff1a;https://github.com/leanflutter/window_manager二、win32 一个包&#xff0c;它使用FFI包装了一些最常见的Win32 API调用&#xff0c;使Dart代码可以访问这些调用&#xff0c;而不需…

腾讯云服务器上传文件 :Permission denied (os error 13) ,由于权限无法上传

根据网上的修改云服务器上传文件目录的权限&#xff0c;或是用root权限上传本地文件&#xff0c;均失败。 正解办法&#xff1a; ubuntu:/home/wwwroot# sudo passwd root Enter new UNIX password: Retype new UNIX password: passwd: password updated successfully首先修…

【论文笔记】NeuRAD: Neural Rendering for Autonomous Driving

原文链接&#xff1a;https://arxiv.org/abs/2311.15260 1. 引言 神经辐射场&#xff08;NeRF&#xff09;应用在自动驾驶中&#xff0c;可以创建可编辑的场景数字克隆&#xff08;可自由编辑视角和场景物体&#xff09;&#xff0c;以进行仿真。但目前的方法或者需要大量的训…

图像处理—小波变换

小波变换 一维小波变换 因为存在 L 2 ( R ) V j 0 ⊕ W j 0 ⊕ W j 0 1 ⊕ ⋯ L^{2}(\boldsymbol{R})V_{j_{0}}\oplus W_{j_{0}}\oplus W_{j_{0}1}\oplus\cdots L2(R)Vj0​​⊕Wj0​​⊕Wj0​1​⊕⋯&#xff0c;所以存在 f ( x ) f(x) f(x)可以在子空间 V j 0 V_{j_0} Vj0…

springboot使用Validated实现参数校验

做为后端开发人员&#xff0c;一定有前端传的数据是可能会出错的警惕性&#xff0c;否则程序就可能会出错&#xff0c;比如常遇到的空指针异常&#xff0c;所以为了程序运行的健壮性&#xff0c;我们必须对每一个参数进行合法校验&#xff0c;就能避免很多不必要的错误&#xf…

【高效开发工具系列】eclipse部署web项目

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

el-select绑定值的坑

碰到一个问题&#xff0c;选择框的数据是后端传过来的&#xff0c;下拉框的数据也是后端传过来的&#xff0c;但是打开下拉框时&#xff0c;发现数据没有高亮。 最后发现&#xff0c;只要选择框v-model给的值和option的value绑定的值一致&#xff0c;就可以高亮。 大多数情况下…

机器学习——分类评价指标

【说明】文章内容来自《机器学习——基于sklearn》&#xff0c;用于学习记录。若有争议联系删除。 1、评价指标 对于模型的评价往往会使用损失函数和评价指标&#xff0c;两者的本质是一致的。一般情况下&#xff0c;损失函数应用于训练过程&#xff0c;而评价指标应用于测试过…

【Xcode】解决Unable to process request - PLA Update available

出现场景 IOS更新app时&#xff0c;使用Xcode上传新版本的包时&#xff0c;提示无法上传。 Unable to process request -PLA update available you currently dont have access to this membership resource. To resolve this issue ,agree to the latest program license a…

Flutter ExpansionPanelList 去除展开后的间隔距离,及属性

可展开列表中&#xff0c;展开后条目有一个间距&#xff0c;可以 使用materialGapSize: 0&#xff0c;来去掉 // child: ExpansionPanelList(//expandedHeaderPadding: EdgeInsets.zero,//头部顶部间隔// materialGapSize: 15,//展开后的间距// animationDuration: const …

实在智能成功完成近2亿元C轮融资,全面迎接2024年Agent智能体应用元年

在这个最冷的季节&#xff0c;杭州实在智能科技有限公司&#xff08;以下简称“实在智能”&#xff09;依然表现火爆&#xff0c;近日&#xff0c;实在智能成功完成C轮融资近2亿元人民币&#xff0c;由金泰富资本和安吉智慧谷共同领投、安吉两山国创跟投。 在此轮融资以前&…