• 5673阅读
  • 10回复

如何用QPainter对象动态画图(比如根据采集的数据画动态折线图)? [复制链接]

上一主题 下一主题
离线ustone
 

只看楼主 倒序阅读 楼主  发表于: 2018-08-12
每两次采集数据之间有相同时间间隔。
离线never_forget

只看该作者 1楼 发表于: 2018-08-13
你要会 QPainter 然后使用定时器,如果你的数据是间隔采集,定时器也许也不需要了,然后按时 绘制 UI 就可以了,而且 Qt 里面是有相关例子 的~
离线ustone

只看该作者 2楼 发表于: 2018-08-13
回 never_forget 的帖子
never_forget:你要会 QPainter 然后使用定时器,如果你的数据是间隔采集,定时器也许也不需要了,然后按时 绘制 UI 就可以了,而且 Qt 里面是有相关例子 的~ (2018-08-13 08:54) 

通过什么事件函数绘制?
离线never_forget

只看该作者 3楼 发表于: 2018-08-13
回 ustone 的帖子
ustone:通过什么事件函数绘制? (2018-08-13 13:31) 

drawLines drawArc 写在 paintevent 函数里面就可以吧~
离线ustone

只看该作者 4楼 发表于: 2018-08-13
回 never_forget 的帖子
never_forget:drawLines drawArc 写在 paintevent 函数里面就可以吧~ (2018-08-13 13:58) 

paintEvent函数里不是一次性绘制,怎么根据来的数据动态绘图呢?
离线never_forget

只看该作者 5楼 发表于: 2018-08-14
回 ustone 的帖子
ustone:paintEvent函数里不是一次性绘制,怎么根据来的数据动态绘图呢? (2018-08-13 22:15) 

每来一次数据你就调用一次 paintevent ,
如果你还有别的问题,建议加一下我的个人群,方便一点:
点击链接加入群聊【Qt 萌新】:https://jq.qq.com/?_wv=1027&k=5w66xAq
离线ustone

只看该作者 6楼 发表于: 2018-08-14
回 never_forget 的帖子
never_forget:每来一次数据你就调用一次 paintevent ,
如果你还有别的问题,建议加一下我的个人群,方便一点:
点击链接加入群聊【Qt 萌新】:https://jq.qq.com/?_wv=1027&k=5w66xAq
 (2018-08-14 08:51) 

那等于每来一次数据,调用paintEvent,用所有的历史数据整个重绘一次,而不是新数据叠加绘制,这样效率很低。
离线songhuirong1

只看该作者 7楼 发表于: 2018-08-14
这种情景更适合使用QtCharts模块来实现,而不是自己去paint。我在项目里做数据采集就是用QtCharts来展示数据的,非常美观,而且使用起来也很简单的。
离线ustone

只看该作者 8楼 发表于: 2018-08-15
回 songhuirong1 的帖子
songhuirong1:这种情景更适合使用QtCharts模块来实现,而不是自己去paint。我在项目里做数据采集就是用QtCharts来展示数据的,非常美观,而且使用起来也很简单的。 (2018-08-14 21:56) 

好,我了解一下。我是觉得自己绘制界面可以更灵活。
离线songhuirong1

只看该作者 9楼 发表于: 2018-08-18
回 ustone 的帖子
ustone:好,我了解一下。我是觉得自己绘制界面可以更灵活。 (2018-08-15 13:26) 

自己绘制也可以,但要达到QtCharts的效果,估计要花很多时间和精力,不说逻辑代码的实现,光是外观的定制(比如配色等)就要花一番功夫,各种显示的配色也不是那么容易的。
离线ustone

只看该作者 10楼 发表于: 2018-08-18
回 songhuirong1 的帖子
songhuirong1:自己绘制也可以,但要达到QtCharts的效果,估计要花很多时间和精力,不说逻辑代码的实现,光是外观的定制(比如配色等)就要花一番功夫,各种显示的配色也不是那么容易的。 (2018-08-18 06:43) 

确实~
快速回复
限100 字节
 
上一个 下一个