• 2538阅读
  • 1回复

QT QGraphicsScene 的刷新问题 [复制链接]

上一主题 下一主题
离线longkimari
 

只看楼主 倒序阅读 楼主  发表于: 2018-04-23
前几天的问题,参见http://www.qtcn.org/bbs/read-htm-tid-65867.html

引用:
   我在做一个仪表类项目,用得是QGrahpicsScene。
        基本结构是这样的:
                
               m_scene ----->  textItem(位置不变、内容用Setplainttext来改变)、svgitem (位置不变,内容不变的框架)
                              |——> svgitem类(位置或内容需要变更的)
               通过timer控制m_scene.update ;
        
           在svgitem类中,用QSvgRenderer载入svg素材,用QSvgRenderer.setviewbox来确定显示素材的区域,render来渲染;
            整个重绘数据是一个全局数据结构;由一个UDP类提供更新;
            目前程序运行都是正常的,但是遇到一个问题:
            在timer控制的scene.update执行后,svgitem类显示的内容没有根据数据更新;

            如果在强制在 scene.update前执行QGraphicsSVGItem.update进行更新,
            那么虽然运行正常了,但是刷新率下降到无法容忍的程度;

            希望各位大师能指明一个刷新的策略,解决这个问题;

----------------------------
目前的情况,我加入了时间输出,发现每次刷新后,虽然timer(1)信号连接到updateview;但实际上需要300~500毫秒才能进入刷新环节;
这段时间QT系统在干嘛呢?



哪位大大知道吗?
离线fu22507411

只看该作者 1楼 发表于: 2018-04-23
说的很模糊,还是有代码看比较好
邮箱jiahao_coffee@foxmail.com 有问题可以免费咨询,有空都会回答,不过太难了我答不上来不要介意哈
快速回复
限100 字节
 
上一个 下一个