QGraphicsLineItem Class
QGraphicsLineItem 类提供了一个行项目,您可以将其添加到QGraphicsScene... 更多...
标题: | #include <QGraphicsLineItem> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Widgets) target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
qmake: | QT += widgets |
继承: | QGraphicsItem |
公共类型
enum | anonymous { Type } |
公共函数
QGraphicsLineItem(QGraphicsItem *parent = nullptr) | |
QGraphicsLineItem(const QLineF &line, QGraphicsItem *parent = nullptr) | |
QGraphicsLineItem(qreal x1, qreal y1, qreal x2, qreal y2, QGraphicsItem *parent = nullptr) | |
virtual | ~QGraphicsLineItem() |
QLineF | line() const |
QPen | pen() const |
void | setLine(const QLineF &line) |
void | setLine(qreal x1, qreal y1, qreal x2, qreal y2) |
void | setPen(const QPen &pen) |
重新实现的公共函数
virtual QRectF | boundingRect() const override |
virtual bool | contains(const QPointF &point) const override |
virtual bool | isObscuredBy(const QGraphicsItem *item) const override |
virtual QPainterPath | opaqueArea() const override |
virtual void | paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget = nullptr) override |
virtual QPainterPath | shape() const override |
virtual int | type() const override |
详细说明
要设置项目的行,请向 QGraphicsLineItem 的构造函数传递QLineF 或调用setLine() 函数。line() 函数返回当前行。默认情况下,线条为黑色,宽度为 0,但您可以调用setPen() 进行更改。
QGraphicsLineItem 使用线条和笔宽来合理实现boundingRect(),shape(), 和contains().paint() 函数使用项目的关联笔绘制线条。
另请参阅 QGraphicsPathItem,QGraphicsRectItem,QGraphicsEllipseItem,QGraphicsTextItem,QGraphicsPolygonItem,QGraphicsPixmapItem 和图形视图框架。
成员函数文档
[explicit]
QGraphicsLineItem::QGraphicsLineItem(QGraphicsItem *parent = nullptr)
构造一个 QGraphicsLineItem。parent 传递给QGraphicsItem 的构造函数。
另请参阅 QGraphicsScene::addItem().
[explicit]
QGraphicsLineItem::QGraphicsLineItem(const QLineF &line, QGraphicsItem *parent = nullptr)
构造一个 QGraphicsLineItem,使用line 作为默认行。parent 将传递给QGraphicsItem 的构造函数。
另请参阅 QGraphicsScene::addItem().
[explicit]
QGraphicsLineItem::QGraphicsLineItem(qreal x1, qreal y1, qreal x2, qreal y2, QGraphicsItem *parent = nullptr)
构造一个 QGraphicsLineItem,使用 (x1,y1) 和 (x2,y2) 之间的行作为默认行。parent 将传递给QGraphicsItem 的构造函数。
另请参阅 QGraphicsScene::addItem().
[virtual noexcept]
QGraphicsLineItem::~QGraphicsLineItem()
[override virtual]
QRectF QGraphicsLineItem::boundingRect() const
重实现:QGraphicsItem::boundingRect() const.
[override virtual]
bool QGraphicsLineItem::contains(const QPointF &point) const
重实现:QGraphicsItem::contains(const QPointF &point) const.
[override virtual]
bool QGraphicsLineItem::isObscuredBy(const QGraphicsItem *item) const
重实现:QGraphicsItem::isObscuredBy(const QGraphicsItem *item) const.
QLineF QGraphicsLineItem::line() const
返回项目的行,如果没有设置行,则返回空行。
另请参阅 setLine()。
[override virtual]
QPainterPath QGraphicsLineItem::opaqueArea() const
重实现:QGraphicsItem::opaqueArea() const.
[override virtual]
void QGraphicsLineItem::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget = nullptr)
重实现:QGraphicsItem::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget)。
QPen QGraphicsLineItem::pen() const
返回项目的钢笔,如果没有设置钢笔,则返回 0 宽度的黑色实心钢笔。
另请参阅 setPen()。
void QGraphicsLineItem::setLine(const QLineF &line)
将项目的行设置为给定的line 。
另请参阅 line() 。
void QGraphicsLineItem::setLine(qreal x1, qreal y1, qreal x2, qreal y2)
这是一个重载函数。
将项目的行设置为 (x1,y1) 和 (x2,y2) 之间的一行。
这与调用setLine(QLineF(x1, y1, x2, y2))
相同。
void QGraphicsLineItem::setPen(const QPen &pen)
将项目的钢笔设置为pen 。如果没有设置钢笔,将使用黑色 0 宽实心钢笔绘制线条。
另请参阅 pen() 。
[override virtual]
QPainterPath QGraphicsLineItem::shape() const
重实现:QGraphicsItem::shape() const.
[override virtual]
int QGraphicsLineItem::type() const
重实现:QGraphicsItem::type() const.
© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.