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



这是我的方法

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


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

最佳答案

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

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


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


  将画家的背景画笔设置为给定的画笔。
  
  背景画笔是在绘制不透明文本,斑点线和位图时填充的画笔。


我想这不是您所需要的。

关于c++ - 如何使用QPaint创建像这样的圆,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21639106/

10-10 17:49
查看更多