文章目录
- Qt::PenJoinStyle
- Qt::PenCapStyle
- Qt::PenStyle
- QPen
Qt::PenJoinStyle
| 内容 | 值 | 说明 |
|---|---|---|
Qt::MiterJoin | 0x00 | 这些线的外边缘将延伸,以一定角度相交,并填充此区域。 |
Qt::BevelJoin | 0x40 | 两条线之间的三角形缺口被填满。 |
Qt::RoundJoin | 0x80 | 两条直线之间的圆弧将被填充。 |
Qt::SvgMiterJoin | 0x100 | 与SVG 1.2 Tiny规范中的斜接定义相对应的斜接。 |


Qt::PenCapStyle
| 内容 | 值 | 说明 |
|---|---|---|
Qt::FlatCap | 0x00 | 不覆盖线条端点的方形线条端点。 |
Qt::SquareCap | 0x10 | 覆盖端点并超出端点一半线宽的正方形线条端点。 |
Qt::RoundCap | 0x20 | 一个圆形的线端。 |

Qt::PenStyle
| 内容 | 值 | 说明 |
|---|---|---|
Qt::NoPen | 0 | 完全没有线条。例如,QPainter::drawRect()填充但不绘制任何边界线。 |
Qt::SolidLine | 1 | 平面线条。 |
Qt::DashLine | 2 | 由几个像素分隔的虚线。 |
Qt::DotLine | 3 | 由几个像素分隔的点。 |
Qt::DashDotLine | 4 | 交替点划线。 |
Qt::DashDotDotLine | 5 | 一个短划线,两个点,一个短划,两个圆点。 |
Qt::CustomDashLine | 6 | 使用QPainterPathStroker::setDashPattern()定义的自定义模式。 |

QPen
笔样式定义线型。画笔用于填充用笔生成的笔划。使用QBrush 类指定填充样式。封口样式确定可以使用QPainter绘制的线端封口,而连接样式描述如何绘制两条线之间的连接。笔宽可以以整数((width())和浮点(widthF())精度指定。线宽为零意味着笔宽始终绘制为一个像素宽,与设置的变换无关。使用相应的 setStyle(), setWidth(), setBrush(), setCapStyle() 和 setJoinStyle()函数可以很容易地修改各种设置(在更改笔的属性时必须重置painter的笔)。默认画笔为实心黑色画笔,具有1宽、方形封口样式(Qt::SquareCap)和斜角连接样式(Qt::BevelJoin)。此外,QPen还提供了 color() 和setColor() 函数,分别提取和设置画笔的颜色。笔也可以进行比较和流式传输。有关一般绘制的详细信息,请参见 Paint System 文档。
| 返回值 | 函数 | 说明 |
|---|---|---|
| QPen(QPen &&pen) | 构造函数 | |
| QPen(const QPen &pen) | 构造函数 | |
| QPen(const QBrush &brush, qreal width, Qt::PenStyle style = Qt::SolidLine, Qt::PenCapStyle cap = Qt::SquareCap, Qt::PenJoinStyle join = Qt::BevelJoin) | 构造函数 | |
| QPen(const QColor &color) | 构造函数 | |
| QPen(Qt::PenStyle style) | 构造函数 | |
| QPen() | 构造函数 | |
| QPen & | operator=(QPen &&other) | 拷贝构造函数 |
| QPen & | operator=(const QPen &pen) | 赋值构造函数 |
| ~QPen() | 析构函数 | |
| QBrush | brush() const | 返回画刷。 |
| Qt::PenCapStyle | capStyle() const | 返回线的端口样式。 |
| QColor | color() const | 返回线的颜色。 |
| qreal | dashOffset() const | 返回笔的短划线偏移量。 |
| QVector | dashPattern() const | 返回此笔的虚线图案。 |
| bool | isCosmetic() const | 如果笔是化妆品,则返回true;否则返回false。化妆笔用于绘制具有恒定宽度的笔划,而不考虑应用于所使用的QPainter的任何变换。用化妆笔绘制形状可确保其轮廓在不同比例因子下具有相同的厚度。 |
| bool | isSolid() const | 如果笔具有实心填充,则返回true,否则返回false。 |
| Qt::PenJoinStyle | joinStyle() const | 返回笔的连接样式。 |
| qreal | miterLimit() const | 返回笔的斜接限制。斜接限制仅在连接样式设置为Qt::MiterJoin时才相关。 |
| void | setBrush(const QBrush &brush) | 将用于填充使用此笔生成的笔划的笔刷设置为给定的笔刷。 |
| void | setCapStyle(Qt::PenCapStyle style) | 将笔帽样式设置为给定样式。默认值为Qt::SquareCap。 |
| void | setColor(const QColor &color) | 将画笔的颜色设置为给定的颜色。 |
| void | setCosmetic(bool cosmetic) | 根据化妆品的值,将此笔设置为化妆品或非化妆品。 |
| void | setDashOffset(qreal offset) | 将此笔的短划线偏移(短划线图案上的起点)设置为指定的偏移。偏移是根据用于指定虚线图案的单位来测量的。 |
| void | setDashPattern(const QVector &pattern) | 将此笔的虚线图案设置为给定图案。 |
| void | setJoinStyle(Qt::PenJoinStyle style) | 将笔的连接样式设置为给定样式。默认值为Qt::BevelJoin。 |
| void | setMiterLimit(qreal limit) | 将此笔的斜接限制设置为给定的限制。 |
| void | setStyle(Qt::PenStyle style) | 将笔样式设置为给定样式。 |
| void | setWidth(int width) | 以整数精度将笔宽度设置为给定的宽度(以像素为单位)。 |
| void | setWidthF(qreal width) | 将笔宽度设置为具有浮点精度的给定宽度(以像素为单位)。 |
| Qt::PenStyle | style() const | 返回笔样式。 |
| void | swap(QPen &other) | 用这支笔交换另一支笔。 |
| int | width() const | 返回整数精度的笔宽。 |
| qreal | widthF() const | 返回具有浮点精度的笔宽。 |
| QVariant | operator QVariant() const | 将笔返回为QVariant。 |
| bool | operator!=(const QPen &pen) const | 如果笔与给定笔不同,则返回true;否则为假。如果两支钢笔的样式、宽度或颜色不同,它们就不同。 |
| bool | operator==(const QPen &pen) const | 如果笔等于给定笔,则返回true;否则为假。如果两支钢笔的样式、宽度和颜色相同,则它们是相等的。 |


















