如何使用QPaint创建这样的圆圈

时间:2014-02-07 22:41:08

标签: c++ qt

我正在尝试创建这样的东西

enter image description here

这是我的方法

QPixmap target(60,80);            
QBrush BackGroundBrush;
BackGroundBrush.setColor(QColor(Qt::GlobalColor::black));
QPainter painter(&target);
painter.setBackground(BackGroundBrush);
painter.drawEllipse(10,10,10,10);

现在我想知道如何用颜色完全填充它?我当时想在这个圆圈内画另一个圆圈(白色)?

2 个答案:

答案 0 :(得分:2)

您必须使用painter.setPen选择要绘制边界的颜色和样式,并painter.setBrush设置您将填充的颜色和样式。基本上用无边界填充纯色的东西,你必须简单地使用:

painter.setPen (Qt::NoPen);
painter.setBrush (colorOfYourLiking);

关于setBackground Qt文档中有以下几行:

  

将画家的背景画笔设置为给定画笔。

     

背景画笔是在绘制不透明文本,点画线条和位图时填充的画笔。

我想这不是你需要的。

答案 1 :(得分:0)

我通过以下方式解决了这个问题

BackGroundBrush->setStyle(Qt::SolidPattern)