Qt C++ 自定义仪表盘控件02

news2024/11/17 4:49:28

简介

仪表盘是工控领域不可缺少的一类软件UI元素,通常出现在各类电子看板软件上,以及一些高级的上位机软件界面上,目的是将繁杂的数据转化为可视化的图表能大幅提高后台管理效率。

本文分享了几个经典常用的仪表盘控件,在项目中可以拿来即用。由于源码较为精简,初次做Qt开发的伙伴们,也可以拿来源码学习学习,做一些简单的修改即可实现更多自定义的效果。参考这几个仪表盘的源码和设计,基本上可以触类旁通,实现其他的仪表盘风格。

内容

1.gaugecompass

该仪表盘模拟指南针的效果,它的数值随其他控件或者信号发送者发送数值改变的信号,然后仪表盘通过槽setValue(int)进行数值的更新,从而实现数值改变时,指针动态指向的效果。

connect(slider,SIGNAL(valueChanged(int)),g,SLOT(setValue(int)));

仪表盘的颜色,指针颜色,数值颜色以及表盘背景都可以灵活更改。

2.gaugedial

3.gaugelpm

该仪表盘主要特点是实现指针划过的圆弧区域填充为蓝色,以及图表中的数字样式设置。

4.gaugemini

该仪表盘是一系列小仪表构成,对指针提供了多种风格,可以灵活组合选用。

5.gaugenet

该仪表盘提供了网速监控的效果,其最大特点在于指针转过的角度和数值变化不是线性变化的,随着量级增加,指针转过的角度代表的数量变化越来越来大。

以上仪表盘通常可以设置的内容为

*1:可设置范围值,支持负数值

* 2:可设置精确度,最大支持小数点后3位

* 3:可设置大刻度数量/小刻度数量

* 4:可设置开始旋转角度/结束旋转角度

* 5:可设置是否启用动画效果以及动画效果每次移动的步长

* 6:可设置外圆背景/内圆背景/进度三种颜色/刻度尺颜色/文字颜色

* 7:自适应窗体拉伸,刻度尺和文字自动缩放

* 8:可自由拓展各种渐变色,各圆的半径

* 9:指示器样式可选择 圆形指示器 指针指示器 圆角指针指示器 三角形指示器

资源

在此将源码分享给有需要的伙伴,共同进步!

链接:https://pan.baidu.com/s/1inlVtWMeuOwcT8llVGDQlQ?pwd=ptty

提取码:ptty

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/339271.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

利用升序定时器链表处理非活动连接

参考自游双《Linux高性能服务器编程》 背景 服务器同常需要定期处理非活动连接:给客户发一个重连请求,或关闭该连接,或者其他。我们可以通过使用升序定时器链表处理非活动连接,下面的代码利用alarm函数周期性的触发SIGALRM信号&a…

半人半妖时代来啦

未来是半人半妖时代!!! 碳基生命与硅基生命结合 趣讲大白话:人和机器结合是大趋势 *********** 人工智能就是宗~教 科技宗~教的一支最强势的教派 日常使用智能机器的人就是信众 维护机器的人就是牧师 创造这…

【mock】手把手带你用mock写自定义接口+mock常用语法

mock自定义接口完整流程 官网语法规范:https://github.com/nuysoft/Mock/wiki/Syntax-Specification 首先: 要有一个项目,我这里是vue3项目,以下从vue3项目搭建开始,已搭建好的请直接看2 1.空目录下新建vue3项目 运行创建项目命令: 在bash中:(文件路径处输入cm…

【计组】内存和总线--《深入浅出计算机组成原理》(十)

课程链接:深入浅出计算机组成原理_组成原理_计算机基础-极客时间 一、虚拟内存和内存保护 日常使用的操作系统下,程序不能直接访问物理内存。内存需要被分成固定大小的页(Page),再通过虚拟内存地址(Virtu…

卡通形象人物2 写代码-睡觉 丝滑如德芙

目录 本次实现效果 目录结构 index static/css/style.css static/js/script.js 结语: 前期回顾 【 css动画 】—— 把你喜欢css动画嵌入到浏览器中_0.活在风浪里的博客-CSDN博客常用酷炫动画999合集,代码直接复制可用,总用你想找的…

【Java】 JAVA Notes

JAVA语言帮助笔记Java的安装与JDKJava命名规范JAVA的数据类型自动类型转换强制类型转换JAVA的运算符取余运算结果的符号逻辑运算的短路运算三元运算符运算符优先级JAVA的流程控制分支结构JAVA类Scanner类Math 类random方法获取随机数Java的安装与JDK JDK安装网站:h…

AXI 总线协议学习笔记(4)

引言 前面两篇博文从简单介绍的角度说明了 AXI协议规范。 AXI 总线协议学习笔记(2) AXI 总线协议学习笔记(3) 从本篇开始,详细翻译并学习AXI协议的官方发布规范。 文档中的时序图说明: AXI指&#xff1…

基础面试题:堆和栈的区别

面试题:堆和栈的区别(往往讲的是内存zha) 为什么说访问栈栈比访问堆快些? 目录 一、数据结构中的堆栈 1、数据结构中的堆 1)堆的定义 2)堆的效率 2、 数据结构中的栈 二、内存中的堆栈 1、内存堆的定义…

Stm32 for arduino STM32G071GBU6 I2C and SERIAL

文件目录: C:\Users\Administrator\AppData\Local\Arduino15\packages\STMicroelectronics\hardware\stm32\2.3.0\variants\STM32G0xx\G071G(6-8-B)U_G081GBU boards_entry.txt Generic G071GBUx GenG0.menu.pnum.GENERIC_G071GBUXGeneric G071GBUx GenG0.menu.pnum.GENERIC…

SpringMVC:统一异常处理(11)

统一异常处理1. 说明2. 问题描述3. 异常处理器使用3.1 创建异常处理器类3.2 让程序抛出异常3.3 测试4. 项目异常处理方案4.1 异常分类4.2 异常解决方案4.3 异常解决方案的具体实现4.4 测试5. 总结1. 说明 \quad本篇文章是在文章SpringMVC:SSM整合(Spring…

【Vuex 源码学习】第六篇 - Vuex 的模块收集

一,前言 上一篇,主要介绍了 Vuex 中 Mutations 和 Actions 的实现,主要涉及以下几个点: 将 options 选项中定义的 mutation 方法绑定到 store 实例的 mutations 对象;创建并实现 commit 方法(同步&#x…

最近挺火的人工智能chatGPT注册

文章目录1.前提预备1.1 短信接收平台1.2 ip加速,不做说明2.注册chatGPT步骤2.1 进入chat.openai.com网址后,点击sign up2.2 可以使用qq邮箱注册2.3 填写好邮箱,然后点击Continue,然后再填写密码2.4 之后在qq邮箱进行验证注册(注意&#xff1a…

C++入门——内存管理

C入门——内存管理 C/C内存分布 分类是为了更好的管理 int globalVar 1; static int staticGlobalVar 1; void Test() {static int staticVar 1;int localVar 1;int num1[10] {1, 2, 3, 4};char char2[] "abcd";char* pChar3 "abcd";int* ptr1 (…

Java、JSP环境保护与宣传网站的设计与实现

技术:Java、JSP等摘要:本文对环境保护与宣传网站的设计和开发过程进行了详细地分析与叙述。按照系统开发的实际操作流程以及论文编写的规范,论文内容从系统概述、系统分析、系统设计和系统实现这四大模块对系统的开发过程分别进行了阐述。系统…

python3-API流量回放/锲约测试/自动化测试

PPL-Tester 简介 http工具集,通过代理获取到API的请求与响应信息,将这些请求信息进行流量回放/锲约测试或快速生成用例, 亦可通过人工进行修改参数化提取、变量引用、断言等形成API自动化测试用例等! 你以为只是流量回放吗?错~走去瞧瞧v2版本! 看官~请记得给个star呗? 项…

驱动 | Linux | NVMe - 1. 概述

本文主要参考2篇相关的解析 1’ 2 和 linux 源码 3。 此处推荐一个可以便捷查看 linux 源码的网站 bootlin 4。 更新:2022 / 02 / 11 驱动 | Linux | NVMe - 1. 概述与nvme_core_init函数解析NVMe 的前世今生NVMe CommandPCI 总线从架构角度看 NVMe 驱动NVMe 驱动的…

前端开发中如何处理接口数据过大的问题

题引: 当我们在公司做项目的时候,难免会遇到后端接口直接给你返回成千上万的数据进行渲染。如果我们直接一股脑遍历添加的话,就会导致空白页面的等待时间是很长且异常卡顿,那么对于数据过大的渲染就需要进行特殊的处理。这也是一…

PyQt5数据库开发1 4.1 SQL Server 2008 R2如何开启数据库的远程连接

文章目录 前言 步骤/方法 1 使用windows身份登录 2 启用混合登录模式 3 允许远程连接服务器 4 设置sa用户属性 5 配置服务器 6 重新登录 7 配置SSCM 8 确认防火墙设置 注意事项 前言 SQL Server 2008 R2如何开启数据库的远程连接 SQL Server 2008默认是不允许远程连…

ExecutorService、Callable、Future实现有返回结果的多线程原理解析

在并发多线程场景下,存在需要获取各线程的异步执行结果,这时,就可以通过ExecutorService线程池结合Callable、Future来实现。 我们先来写一个简单的例子—— public class ExecutorTest {public static void main(String[] args) throws Ex…

KMP 算法

1 应用场景-字符串匹配问题  字符串匹配问题:: 有一个字符串 str1 ““硅硅谷 尚硅谷你尚硅 尚硅谷你尚硅谷你尚硅你好””,和一个子串 str2“尚硅谷你尚硅 你” 2) 现在要判断 str1 是否含有 str2, 如果存在,就返回第一次出现…