简述

QRoundProgressBar类能够实现一个圆形进度条,继承自QWidget,并且有和QProgressBar类似的API接口。

  • 简述
  • 详细说明
  • 风格
  • 颜色
  • 字体
  • 共有函数
  • 共有槽函数

详细说明

主要有以下特性:

  • 圆形进度条控件
  • 高度可定制的

源码下载:

  • Qt Circular Progress Bar Widget
  • QRoundProgressBar下载

下载完后,进行解压缩,src目录里包含了两个主要的文件QRoundProgressBar.h和QRoundProgressBar.cpp,可以直接使用,也可以预编译为库。

test目录中则包含了一个使用的示例,可以直接运行。

效果如下:

风格

QRoundProgressBar包含三种风格。

枚举QRoundProgressBarBar::Style:

常量 描述
QRoundProgressBar::StyleDonut 圆环风格(环绕文本)
QRoundProgressBar::StylePie 饼状风格(文本位于扇形中央)
QRoundProgressBar::StyleLine 线状风格(细线环绕文本)

颜色

通常情况下,QRoundProgressBar使用调色板(palette)和字体(font)属性来定义外观。

可以考虑使用QPalette中QPalette::ColorRole的以下成员:

常量 描述
QPalette::Window 设置整个部件的背景(正常情况下,应该设置为:Qt::NoBrush)
QPalette::Base 未填充进度区域的背景(如果需要透明,应该设置为:Qt::NoBrush)
QPalette::AlternateBase 文本显示所在的中间圆环的背景(为圆环风格)
QPalette::Shadow 未填充区域的前景色(即:边框色)
QPalette::Highlight 填充进度条区域的背景色
QPalette::Text 在中心显示的文本色

字体

通过setFont()为文本设置字体。

默认情况下,将自动调整字体大小,以适应部件的内部圆环。

共有函数

  • double nullPosition()
    返回最小值的位置(用角度表示)。

  • void setNullPosition(double position);
    设置最小值的位置,position为圆上最小值的位置(用角度表示)。

  • void setBarStyle(BarStyle style);
    设置显示风格。

  • BarStyle barStyle() const;
    返回显示风格。

  • void setOutlinePenWidth(double penWidth);
    设置圆环轮廓线的画笔宽度(像素)。

  • double outlinePenWidth() const;
    返回圆环轮廓线的画笔宽度。

  • void setDataPenWidth(double penWidth);
    设置圆环数据圆笔的宽度。

  • double dataPenWidth() const;
    返回圆环数据圆笔的宽度。

  • void setDataColors(const QGradientStops& stopPoints);
    设置可见数据的渐变色。

    注意:此函数会覆盖palette(),来动态创建渐变。

  • void setFormat(const QString& format);
    定义用于生成当前的文本字符串。

    注意:如果没有设置格式,将不会显示文本。

  • void resetFormat();
    重置格式字符串为空字符串,将不会显示文本。

  • QString format() const;
    返回用于生成当前文本的格式。

  • void setDecimals(int count);
    设置显示小数点后的位数(默认为1)。

  • int decimals() const;
    返回显示小数点后的位数。

  • double value() const;
    返回当前显示在控件上的值。

  • double minimum() const;
    返回允许值范围的最小值。

  • double maximum() const;
    返回允许值范围的最大值。

共有槽函数

  • void setRange(double min, double max);
    设置允许值范围。

  • void setMinimum(double min);
    设置允许值范围的最小值。

  • void setMaximum(double max);
    设置允许值范围的最大值。

  • void setValue(double val);
    设置当前显示在控件上的值(浮点数),必须在最小值和最大值之间。

  • void setValue(int val);
    设置当前显示在控件上的值(整数),必须在最小值和最大值之间。

转载于:https://www.cnblogs.com/itrena/p/5938256.html

Qt之QRoundProgressBar(圆形进度条)相关推荐

  1. QT自定义圆形进度条

    以下是一个简单的示例,展示如何创建一个自定义的圆形进度条控件. 1.创建一个新的Qt控件类,继承QProgressBar类.在该类的头文件中添加以下代码:     class CircularProg ...

  2. 圆的css样式,圆形进度条css3样式

    30% 以下样式100upx是50upx的2倍,这是尺寸比例 .con { position: relative; display: inline-block; height: 100upx; wid ...

  3. android 自定义音乐圆形进度条,Android自定义View实现音频播放圆形进度条

    本篇文章介绍自定义View配合属性动画来实现如下的效果 实现思路如下: 根据播放按钮的图片大小计算出圆形进度条的大小 根据音频的时间长度计算出圆形进度条绘制的弧度 通过Handler刷新界面来更新圆形 ...

  4. Android自定义控件NumberCircleProgressBar(圆形进度条)的实现

    Android自定义控件NumberCircleProgressBar(圆形进度条)的实现

  5. html进度条圆圈渐变色,HTML5 canvas带渐变色的圆形进度条动画

    jquery-circle-progress是一款带渐变色的圆形进度条动画特效jQuery插件.该圆形进度条使用的是HTML5 canvas来绘制圆形进度条及其动画效果,进度条使用渐变色来填充,效果非 ...

  6. 微信小程序之圆形进度条(自定义组件)

    前言 昨天在微信小程序实现了圆形进度条,今天想把这个圆形进度条做成一个组件,方便以后直接拿来用. 根据官方文档自定义组件一步一步来 创建自定义组件 第一步创建项目结构 打开微信开发者工具创建一个项目, ...

  7. Android 之 ProgressDialog用法介绍(矩形进度条 和 圆形 进度条)

    2019独角兽企业重金招聘Python工程师标准>>> 布局文件: <LinearLayout xmlns:android="http://schemas.andro ...

  8. 【Android 应用开发】 自定义 圆形进度条 组件

    转载著名出处 : http://blog.csdn.net/shulianghan/article/details/40351487 代码下载 : -- CSDN 下载地址 : http://down ...

  9. android 环形时间显示_Android圆形进度条颜色的设置

    最近几天由于项目的需要研究了一下listView的滑动数据动态的更新显示,其中需要在数据加载过程有圆形进度条的显示,遇到的问题是进度条的颜色设置,在网上查了一些资料结合自己的所得分享在此. xml布局 ...

  10. Android自定义圆形进度条

    Android自定义圆形进度条 github地址:https://github.com/opq1289/CircleProgressView 效果图: 无动画: 有动画: 整圆: 切割圆: 具体步骤: ...

最新文章

  1. 【Java小工匠聊密码学】--base58编码
  2. (gnome-ssh-askpass:609): Gtk-WARNING **: cannot open display:
  3. 关于nginx配置的不完全总结
  4. mysql 存储过程 转义_mysql存储过程中的 sql语句符号问题
  5. Hibernate简介
  6. iPhone 9或于4月3日发布;复制粘贴之父Larry Tesler去世;Android 11开发者预览版来了!| 极客头条...
  7. 19 矩阵——矩阵的相抵、相抵标准形、秩1矩阵、矩阵的满秩分解
  8. 【Python】@ 操作符
  9. 【训练计划】--2019-04
  10. Linux Vim编辑器的基本使用
  11. 服务器pe装系统教程,U盘pe如何重装系统_U盘pe系统安装教程
  12. ubuntu18.04安装CH340和CH341驱动
  13. Appscan漏洞之Authentication Bypass Using HTTP Verb Tampering
  14. w ndows7错误恢复,windows7错误恢复进不去循环 从根本上解决问题
  15. [机器学习与scikit-learn-29]:算法-回归-普通线性回归LinearRegression拟合线性分布数据的代码示例
  16. win10邮箱怎么设置qq邮箱服务器地址,老鸟给你说win10自带邮件怎么添加qq邮箱的解决方式...
  17. JNDI(Java Naming and Directory Interface)介绍
  18. 小程序学习 - 02 微信小程序案例实践
  19. 《C语言程序设计》第4版 何钦铭、颜晖主编 课后习题答案 第12章 课后习题
  20. 艰酸的试用期转正申请报告

热门文章

  1. .Net MVC中SelectList绑定默认值失效的解决办法
  2. Asp.Net(C#.VB)Array、ArrayList和List的区别
  3. ElasticSearch学习(一):Linux环境准备
  4. FISCO BCOS(五)———部署安装jdk1.8
  5. (day 52 - 递归 and 短路逻辑运算符的用法 ) 剑指 Offer 64. 求1+2+…+n
  6. c语言函数与宏定义的应用,C语言第3次实_函数与宏定义的应用.doc
  7. php标准代码格式,PHP PSR代码格式规范
  8. C#:遍历JObject
  9. java lower_Java TreeSet lower()用法及代码示例
  10. NullPointerException空指针异常的理解