QT 仪表盘制作

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/uriel_chiang/article/details/80186434

QT主要提供三种图形界面:Widget,Graphics,QML

  • Widget:适用于大量数据交互
  • Graphics:适用于场景中很多图元的
  • QML:解释型,属于轻量级界面,不适合大量数据交互,偏向视觉

这里提供的界面设计思想基于Graphics框架,采用SVG进行设计
这里参考了一款飞行的开源软件https://sourceforge.net/projects/qfi/

思路:

  1. 使用InKscape参考开源软件的仪表设计界面进行仪表零部件划设:背景、表盘、蒙版(基础使用方法参考:https://blog.csdn.net/uriel_chiang/article/details/80186267
  2. 使用QT中的类QGraphicsSvgItem加载设计出来的仪表零部件,设置其位置、大小(QT 工程文件 +svg模块)(使用方法参考:https://blog.csdn.net/uriel_chiang/article/details/80186546
  3. 使用QGraphicsScene放置所有Item,设置其层叠关系
  4. 使用QGraphicsView观看(显示)部分QGraphicsScene
  5. 动态移动、旋转表盘,动态生成QGraphicsTextItem文字显示数值

注意:

  1. 背景移动和蒙版如果需要移动效果的话,建议将其拆分为n个更小的零部件
  2. 背景移动和蒙版如果需要移动逐渐改变颜色效果,建议将一个零部件拆分为两个,一个颜色(不需要时隐藏),需要时,设定其倍数覆盖在另一个颜色之上
阅读更多

扫码向博主提问

uriel_chiang

非学,无以致疑;非问,无以广识
去开通我的Chat快问
换一批

没有更多推荐了,返回首页