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);
相关推荐
_李小白7 小时前
【OSG学习笔记】Day 22: StateSet 与 StateAttribute (渲染状态)
笔记·学习
zzh0818 小时前
Mysql数据库备份与恢复笔记
数据库·笔记·mysql
丝斯20119 小时前
AI学习笔记整理(79)——Python学习8
人工智能·笔记·学习
Z.风止10 小时前
Large Model-learning(2)
开发语言·笔记·python·leetcode
烛之武10 小时前
SpringCloud基础(上)
笔记·spring·spring cloud
南境十里·墨染春水10 小时前
C++ 笔记 深赋值 浅赋值(面向对象)
开发语言·jvm·c++·笔记
今儿敲了吗10 小时前
算法复盘——差分
数据结构·c++·笔记·学习·算法
_李小白11 小时前
【OSG学习笔记】Day 23: ClipNode(动态裁剪)
android·笔记·学习
丝斯201112 小时前
AI学习笔记整理(78)——Python学习7
人工智能·笔记·学习