Qt 画圆弧(圆环)

【1】重写paintEvent函数

cpp 复制代码
class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    MainWindow(QWidget *parent = nullptr);
    ~MainWindow();
protected:
    void paintEvent(QPaintEvent *); //重写

【2】使用drawArc函数

cpp 复制代码
painter->drawArc(left,top,width,height, start*16, delta*16);

left:圆外切矩形的"左边"x坐标

top:圆外切矩形的"上边"y坐标

width:圆外切矩形的宽度

height:圆外切矩形的高度

start:圆环起始角度(不是弧度)

delta:圆环从起始角度开始延伸的角度变化量(不是弧度)

【3】画笔设置

cpp 复制代码
    QLinearGradient gradient(0,y, 0,y+r);
    gradient.setColorAt(0,QColor(250,209,109));
    gradient.setColorAt(1,QColor(228,74,56));
    QPen thickPen(gradient,linewith);
    painter->setPen(thickPen);

【4】源代码链接(圆环进度条)

https://download.csdn.net/download/notfindjob/90455556

相关推荐
盐焗鹌鹑蛋1 小时前
【C++】继承
开发语言·c++
栈溢出了2 小时前
Java Lambda 表达式笔记
java·开发语言·intellij-idea
zhixingheyi_tian2 小时前
一份GC日志的解读
java·开发语言
czhaii2 小时前
串口1中断收发-C语言-MODBUS协议
c语言·开发语言
apihz2 小时前
随机驾考题目(C 照科一 / 科四 2000+ 题)免费API调用教程
android·java·c语言·开发语言·网络协议·tcp/ip
matlab代码3 小时前
基于matlab人脸疲劳驾驶检测系统(可使用其它人脸视频)【源码39期】
开发语言·matlab·人脸疲劳检测
zenithdev13 小时前
fastcache:为 Go 设计的低 GC 压力内存缓存
开发语言·其他·缓存·golang
想你依然心痛4 小时前
自定义RTOS内核:从零实现上下文切换与任务调度——汇编、PendSV
java·开发语言·汇编·pendsv
geovindu4 小时前
java:Abstract Factory Pattern
java·开发语言·后端·设计模式·抽象工厂模式·创建型模式
geovindu4 小时前
java: Factory Method Pattern
java·开发语言·后端·设计模式·工厂方法模式·创建型模式