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);
相关推荐
myq99几秒前
第三章:Java异常处理
java·开发语言·笔记
阿赵3D19 分钟前
JavaScript学习笔记——11、正则表达式
javascript·笔记·学习·正则表达式
代码or搬砖27 分钟前
JVM学习笔记
jvm·笔记·学习
Lv11770081 小时前
初识Visual Studio中的 WinForm
开发语言·ide·笔记·c#·visual studio
张紫娃1 小时前
日语中的音调
笔记
SatoshiGogo1 小时前
强化学习笔记
笔记
wdfk_prog2 小时前
[Linux]学习笔记系列 -- [fs]libfs
linux·笔记·学习
中屹指纹浏览器2 小时前
2025边缘计算与本地指纹生成技术:浏览器指纹安全与抗检测方案解析
经验分享·笔记
航Hang*2 小时前
Photoshop 图形与图像处理技术——第3章:图像的选择与填充
图像处理·笔记·ui·photoshop
im_AMBER2 小时前
Leetcode 90 最佳观光组合
数据结构·c++·笔记·学习·算法·leetcode