QGraphicsSimpleTextItem Class
QGraphicsSimpleTextItem 类提供了一个简单的文本项,您可以将其添加到QGraphicsScene 中。更多内容...
| 头文件: | #include <QGraphicsSimpleTextItem> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Widgets) target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
| qmake: | QT += widgets |
| 继承自: | QAbstractGraphicsShapeItem |
公共类型
| enum { Type } |
公共函数
| QGraphicsSimpleTextItem(QGraphicsItem *parent = nullptr) | |
| QGraphicsSimpleTextItem(const QString &text, QGraphicsItem *parent = nullptr) | |
| virtual | ~QGraphicsSimpleTextItem() |
| QFont | font() const |
| void | setFont(const QFont &font) |
| void | setText(const QString &text) |
| QString | text() const |
重新实现的公共函数
| 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) override |
| virtual QPainterPath | shape() const override |
| virtual int | type() const override |
详细说明
要设置项的文本,您可以将QString 传递给QGraphicsSimpleTextItem的构造函数,或者稍后调用setText()来更改文本。要设置文本填充颜色,请调用setBrush()。
简单文本项可以同时具有填充和轮廓;setBrush() 将设置文本填充(即文本颜色),而setPen() 则设置用于绘制文本轮廓的画笔。 (后者可能比较慢,特别是对于复杂的笔和文本内容较长的项目。)如果您只想绘制一行简单的文本,则应仅调用setBrush(),而不设置笔;QGraphicsSimpleTextItem的笔默认是Qt::NoPen 。
QGraphicsSimpleTextItem 利用文本的格式化尺寸和关联字体,合理实现了boundingRect()、shape() 以及contains() 方法。您可以通过调用setFont() 来设置字体。
QGraphicsSimpleText 不显示富文本;相反,您可以使用QGraphicsTextItem ,它提供了完整的文本控件功能。

另请参阅 QGraphicsTextItem 、QGraphicsPathItem 、QGraphicsRectItem 、QGraphicsEllipseItem 、QGraphicsPixmapItem 、QGraphicsPolygonItem 、QGraphicsLineItem 以及Graphics View Framework。
成员函数文档
[explicit] QGraphicsSimpleTextItem::QGraphicsSimpleTextItem(QGraphicsItem *parent = nullptr)
创建一个 QGraphicsSimpleTextItem。
parent 该参数将传递给QGraphicsItem 的构造函数。
另请参阅 QGraphicsScene::addItem()。
[explicit] QGraphicsSimpleTextItem::QGraphicsSimpleTextItem(const QString &text, QGraphicsItem *parent = nullptr)
创建一个 QGraphicsSimpleTextItem,并将text 作为默认纯文本。
parent 该参数将传递给QGraphicsItem 的构造函数。
另请参阅 QGraphicsScene::addItem()。
[virtual noexcept] QGraphicsSimpleTextItem::~QGraphicsSimpleTextItem()
[override virtual] QRectF QGraphicsSimpleTextItem::boundingRect() const
重新实现了:QGraphicsItem::boundingRect() const。
[override virtual] bool QGraphicsSimpleTextItem::contains(const QPointF &point) const
重写了:QGraphicsItem::contains(const QPointF &point) const。
QFont QGraphicsSimpleTextItem::font() const
返回用于绘制该项目文本的字体。
另请参阅 setFont()。
[override virtual] bool QGraphicsSimpleTextItem::isObscuredBy(const QGraphicsItem *item) const
重写了:QAbstractGraphicsShapeItem::isObscuredBy(const QGraphicsItem *item) const。
[override virtual] QPainterPath QGraphicsSimpleTextItem::opaqueArea() const
重新实现了:QAbstractGraphicsShapeItem::opaqueArea() const。
[override virtual] void QGraphicsSimpleTextItem::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget)
重写了:QGraphicsItem::paint (QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget)。
void QGraphicsSimpleTextItem::setFont(const QFont &font)
将用于绘制该项目文本的字体设置为font 。
另请参阅 font()。
void QGraphicsSimpleTextItem::setText(const QString &text)
将项目的文本设置为text 。该文本将以纯文本形式显示。换行符('\n')以及类型为QChar::LineSeparator 的字符都会导致项目将文本拆分为多行。
另请参阅 text()。
[override virtual] QPainterPath QGraphicsSimpleTextItem::shape() const
重新实现了:QGraphicsItem::shape() const。
QString QGraphicsSimpleTextItem::text() const
返回该项目的文本。
另请参阅 setText()。
[override virtual] int QGraphicsSimpleTextItem::type() const
重新实现了:QGraphicsItem::type() const。
© 2026 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.