QPainter drawPixmap导致程序停止继续运行

Sky-Yang Sky-Yang 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区

QPainter painter;
painter.begin(this);

printf("drawPixmap 0");

painter.drawPixmap(0, 0, pixmap, 0, 0, iWidth, iPox);

printf("drawPixmap 1");

painter.drawPixmap(0, iPox, iWidth, iHeight - iPox, pixmap, 0, iPox, iWidth, 1);

printf("drawPixmap 2");

painter.end();

程序是在Linux下面运行,上面代码是在QWidget的void paintEvent(QPaintEvent *);中处理。
经常是在输出 drawPixmap 1 后停止在drawPixmap就不跑了,也没出错,其他线程也在正常运行,
printf("drawPixmap 1");

painter.drawPixmap(0, iPox, iWidth, iHeight - iPox, pixmap, 0, iPox, iWidth, 1);

printf("drawPixmap 2");
注:pixmap是在保存在一个list结构体中,这里省略了结构体的表示,输出时pixmap数据是正确的,其他参数也没有问题。这个线程就只有在这里两次drawPixmap时第二次drawPixmap就没继续输出了。
请问有没有人遇到该问题或者知道怎么解决的请告知,谢谢
...全文

相关推荐

Pyqt实现无边框窗口拖动以及窗口大小改变

主要为大家详细介绍了Pyqt实现无边框窗口拖动及大小改变的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

weixin_38656662

Qt C++工业级边缘数据中枢设计与实战

在边缘计算场景中,Qt C++不仅是UI框架,更是构建高鲁棒性实时数据系统的底层基石。其核心价值在于精细内存控制、跨平台原生性能及对低资源硬件的深度适配能力。面对农业物联网中多协议设备接入、非均匀数据流、宽温域运行和断网续传等典型挑战,Qt C++通过线程模型定制、QWidget轻量渲染、自研串口驱动与UDP可靠化改造等手段,实现毫秒级响应与7×24小时稳定运行。本文聚焦Qt C++在真实边缘设备(如树莓派CM4、RK3566)上的工程落地,涵盖架构分层、设备驱动、数据总线、可视化优化与系统部署全链路,为工

congji3817

基于QT的网易云播放器界面美化,QSS与自绘全解析

桌面应用的美化设计是开发中耗时且关键的环节,尤其在音乐播放器这类注重视觉体验的软件中。QT作为跨平台GUI框架,提供了QSS样式表与QPainter自绘两种互补的界面实现路径。QSS能高效处理按钮、列表、滑块等常规控件的色彩与圆角,而QPainter则擅长封面裁切、旋转唱片、渐变背景等自定义绘制。理解两者的原理与分工,能显著提升界面开发效率与表现力。结合网易云播放器界面美化场景,分析无边框窗口、进度条样式、动态封面等实战技巧,并探讨动画优化与打包部署的注意事项,为构建高质感的桌面播放器提供可落地的工程参考。

臭鼠标

高校技术转移办公室人员如何精准识别高质量可转化专利?.docx

科易网基于AI模型+行业大数据,在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,推出科技创新领域的AI+工具与数智化解决方案,推动科技创新与产业创新智能化发展。

BIZKEEN

chromedriver-win64-159.0.8137.0(Canary).zip

chromedriver-win64-159.0.8137.0(Canary).zip

LCG元
评论 16
收藏 已收藏
分享
返回顶部
Sky-Yang
Qt 21,503 成员 26,693 内容