QT笔记 - QPainter 填充环形区域(甜甜圈)

矩形为例:

cpp 复制代码
    QPainter painter(this);
    // painter.setPen(Qt::blue);
    // painter.setFont(QFont("Arial",30));
    // painter.drawText(rect(),Qt::AlignCenter,"Hello Qt!!!");

    QRect rect = QRect(50, 50, 400, 400);
    QRect box = QRect(100, 100, 105, 63);
    QColor maskColor(255, 0, 0, 255);
    QColor fontColor(0, 139, 139, 255  );

    QPainterPath path;
    path.addRect(rect);//添加路径
    path.addRect(box); //添加路径
    QPainterPath subRect;
    subRect.addRect(box);
    path.subtracted(subRect);//减去路径及其所包含的区域

    painter.fillRect(box,fontColor);
    painter.fillPath(path, maskColor);
相关推荐
xian_wwq30 分钟前
【学习笔记】RAG 只是 Context Engineering 的一小块-5/16
笔记·学习·rag
iCxhust1 小时前
8088单板机VScode集成开发环境使用方法
ide·笔记·vscode·编辑器·微机原理·8088单板机
文人sec1 小时前
MySQL事务与索引做了什么?
android·笔记·mysql
NoteStream1 小时前
【C语言基础】分支和循环(上)
c语言·开发语言·c++·经验分享·笔记·算法·c#
zzm6282 小时前
位置偏差估计与无偏排序学习——WSDM 2018论文精读笔记
笔记·学习
kdxiaojie3 小时前
Linux 驱动研究 —— SDIO (1)
linux·运维·笔记·学习·sdio
3A Cloud4 小时前
Architecture Diagram Skill 详细介绍
人工智能·笔记·信息可视化
疯狂打码的少年5 小时前
【数据结构】栈:定义、顺序栈与链式栈
数据结构·笔记
IT古董6 小时前
【MES学习笔记系列】MES 术语表
笔记·学习
Anesthesia丶8 小时前
PromoxVE安装笔记
笔记·ubuntu·server·promox