免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3209 | 回复: 3
打印 上一主题 下一主题

[C++] 用QT开发遇到些问题 希望有人帮帮我 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2014-05-14 18:13 |只看该作者 |倒序浏览
我用QT做一个界面,实时显示数据,开始是用QTimer做的,刷新数据还挺流畅,但是老板说速度不够要求,我就想再用新线程来做,run()函数发送信号,主线程接受信号  然后调用方法来实现。现在就是run()里面需要循环,循环的时候会导致界面很卡,我不知道该怎么做了。。。。。我是新手 求解答

论坛徽章:
0
2 [报告]
发表于 2014-05-22 16:37 |只看该作者
Qte中用QPainter显示的确太慢,最好改为mfc方式, 降低CPU使用率,提高帧率。

论坛徽章:
0
3 [报告]
发表于 2014-05-29 17:13 |只看该作者
两级缓冲行不行
run收到数据,就在内在缓冲里画好。然后再通知上层界面来刷新显示。

另外,当数据来的非常快的时候,比如每秒种收到100次数据,但人的眼睛能识别的每秒最多25次变化。这时控制一下,不用写一次刷新一次,可以写4到5次再去触发刷新动作。
不过这属于优化的步骤,暂时可以先不用考虑。

Qt播放高清视频都没问题,开始刚做项目倒还不用担心QPainter的效率。
估计楼主的卡主要是run里面有while,一直在处理数据,不及时通知主界面刷新,导致主UI卡。并不是主UI显示图像慢才卡的。

论坛徽章:
0
4 [报告]
发表于 2014-05-29 17:15 |只看该作者
如果QTimer定时40毫秒,或者更小一些,视觉上应该感觉不太明显的。你现在QTimer设置多大?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP