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);
相关推荐
暗然而日章3 分钟前
C++基础:Stanford CS106L学习笔记 4 容器(STL与序列容器)
c++·笔记·学习
遇见火星4 分钟前
SSH 安全实战:配置加固、防爆破与二次验证!
笔记·安全·ssh
IT笔记15 分钟前
【Rust】Rust数组和Vec安全读写笔记
笔记·安全·rust
javaGHui23 分钟前
安卓传感器横竖屏切换
android·经验分享·笔记
丝斯201133 分钟前
AI学习笔记整理(19)—— AI核心技术(深度学习3)
人工智能·笔记·学习
im_AMBER34 分钟前
Leetcode 66 几乎唯一子数组的最大和
数据结构·笔记·学习·算法·leetcode
客梦36 分钟前
数据结构-图结构
java·数据结构·笔记
Cathy Bryant1 小时前
信息论(11):链式法则-证明
笔记·算法·数学建模·概率论·信息与通信
搞机械的假程序猿1 小时前
普中51单片机学习笔记-AT24C02读写
笔记·学习·51单片机
暗然而日章1 小时前
C++基础:Stanford CS106L学习笔记 3 流
c++·笔记·学习