我怎样才能画笔宽度为 0(不可见而不是化妆品)?

How can I draw with pen width of 0 (invisible not cosmetic)?

我想绘制具有各种宽度边框的形状。

如果我设置 width = 0,我希望(想象)这里没有边框...但我读到边框 0 非常细("cosmetic")边框。

如何绘制带有不可见边框的图形?

int penWidth = 0; // some user input, 0 to 20 maybe
QPen pen = QPen(Qt::red, penWidth, Qt::PenStyle(Qt::SolidLine));
painter->setPen(pen);
painter->setBrush(QBrush(Qt::SolidPattern));
painter->drawRect(someRect);

可以简单的设置无笔,即:

painter->setPen(Qt::NoPen);

在这种情况下,它根本不会绘制边框线。

您可以使用以下方法获得隐形 QPen :

painter->setPen(QPen(Qt::NoPen));

default QPen constructor creates a black solid line pen with 1 width, you have to force the style to Qt::NoPen得到一个隐形的