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);
相关推荐
AgilityBaby15 分钟前
UE5 2D角色PaperZD插件动画状态机学习笔记
笔记·学习·ue5
AgilityBaby16 分钟前
UE5 创建2D角色帧动画学习笔记
笔记·学习·ue5
冷凌爱4 小时前
总结HTML中的文本标签
前端·笔记·html
保持学习ing4 小时前
黑马Java面试笔记之 集合篇(算法复杂度+ArrayList+LinkedList)
java·笔记·算法·面试
Moonnnn.5 小时前
【单片机期末】串行口循环缓冲区发送
笔记·单片机·嵌入式硬件·学习
fen_fen5 小时前
学习笔记(26):线性代数-张量的降维求和,简单示例
笔记·学习·算法
FakeOccupational6 小时前
【p2p、分布式,区块链笔记 MESH】Bluetooth蓝牙通信 BLE Mesh协议的拓扑结构 & 定向转发机制
笔记·分布式·p2p
布伦鸽7 小时前
C# WPF 左右布局实现学习笔记(1)
笔记·学习·c#·wpf
love530love8 小时前
【笔记】旧版MSYS2 环境中 Rust 升级问题及解决过程
开发语言·人工智能·windows·笔记·python·rust·virtualenv
黑色的山岗在沉睡9 小时前
《视觉SLAM十四讲》自用笔记 第二讲:SLAM系统概述
笔记