![7b6c9a9ded2045cca0604edd974df71e.png](https://i-blog.csdnimg.cn/blog_migrate/a0a36378b0040c612e56f61c8ddf3783.jpeg)
问题描述:
想用一个仪表控件来显示当前含水率的真实值。
主要参考:Qt自定义控件 -- 仪表盘01 (建议精读)
![6de730121ff63652b7aeaefeb58f2d98.png](https://i-blog.csdnimg.cn/blog_migrate/a9029b983f1d7f7f89063202270a4390.jpeg)
建议学习步骤:
- 首先,学习自定义Qt控件类
参考:
(1)黑马程序员Qt(第一部分)P26 06_自定义控件
2. 然后,找别人写好的仪表控件类的例子
参考:
(2)Qt自定义控件 -- 仪表盘01
(3)Qt编写自定义控件51-可输入仪表盘 刘典武
个人体会:上面三个一起食用会更香!
3. 把参考的仪表控件的例子,融合到自己的Qt工程
要点:
1. 先定义好自己的仪表控件类,尤其是“绘图事件”void paintEvent(QPaintEvent *);
2. 在 Ui文件中拖入一个widget,再将其“提升”为该仪表控件对象;
3. 用 signal-slot 机制 实现 主窗口 和 控件对象 之间传值
![4d092568032d3bca20e31c3ce2411148.png](https://i-blog.csdnimg.cn/blog_migrate/bb5f09915257de8189f7c08fd5ffd605.jpeg)
4. 测试结果
![7de6fb411cb4a5fee708d1c5de036675.png](https://i-blog.csdnimg.cn/blog_migrate/45b4307888ea76e9d05be67b57f82cba.jpeg)
参考资料汇总
(1)黑马程序员Qt(第一部分)P26 06_自定义控件
(2)Qt自定义控件 -- 仪表盘01
(3)Qt编写自定义控件51-可输入仪表盘 刘典武
(4)Qt窗体之间相互传值的三种方式
(5)QT 自定义函数 自定义信号和槽
(6)[Qt]自定义信号signals和emit信号