QGraphicsTextItem Class
Die Klasse „QGraphicsTextItem“ stellt ein Textelement bereit, das Sie einem „ QGraphicsScene “ hinzufügen können, um formatierten Text anzuzeigen. Mehr...
| Überschrift: | #include <QGraphicsTextItem> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Widgets) target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
| qmake: | QT += widgets |
| Erbt von: | QGraphicsObject |
Öffentliche Typen
| enum { Type } |
Eigenschaften
- openExternalLinks : bool
- textCursor : QTextCursor
Öffentliche Funktionen
| QGraphicsTextItem(QGraphicsItem *parent = nullptr) | |
| QGraphicsTextItem(const QString &text, QGraphicsItem *parent = nullptr) | |
| virtual | ~QGraphicsTextItem() |
| void | adjustSize() |
| QColor | defaultTextColor() const |
| QTextDocument * | document() const |
| QFont | font() const |
| bool | openExternalLinks() const |
| void | setDefaultTextColor(const QColor &col) |
| void | setDocument(QTextDocument *document) |
| void | setFont(const QFont &font) |
| void | setHtml(const QString &text) |
| void | setOpenExternalLinks(bool open) |
| void | setPlainText(const QString &text) |
| void | setTabChangesFocus(bool b) |
| void | setTextCursor(const QTextCursor &cursor) |
| void | setTextInteractionFlags(Qt::TextInteractionFlags flags) |
| void | setTextWidth(qreal width) |
| bool | tabChangesFocus() const |
| QTextCursor | textCursor() const |
| Qt::TextInteractionFlags | textInteractionFlags() const |
| qreal | textWidth() const |
| QString | toHtml() const |
| QString | toPlainText() const |
Neu implementierte öffentliche Funktionen
| 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 |
Signale
| void | linkActivated(const QString &link) |
| void | linkHovered(const QString &link) |
Neu implementierte geschützte Funktionen
| virtual void | contextMenuEvent(QGraphicsSceneContextMenuEvent *event) override |
| virtual void | dragEnterEvent(QGraphicsSceneDragDropEvent *event) override |
| virtual void | dragLeaveEvent(QGraphicsSceneDragDropEvent *event) override |
| virtual void | dragMoveEvent(QGraphicsSceneDragDropEvent *event) override |
| virtual void | dropEvent(QGraphicsSceneDragDropEvent *event) override |
| virtual void | focusInEvent(QFocusEvent *event) override |
| virtual void | focusOutEvent(QFocusEvent *event) override |
| virtual void | hoverEnterEvent(QGraphicsSceneHoverEvent *event) override |
| virtual void | hoverLeaveEvent(QGraphicsSceneHoverEvent *event) override |
| virtual void | hoverMoveEvent(QGraphicsSceneHoverEvent *event) override |
| virtual void | inputMethodEvent(QInputMethodEvent *event) override |
| virtual QVariant | inputMethodQuery(Qt::InputMethodQuery query) const override |
| virtual void | keyPressEvent(QKeyEvent *event) override |
| virtual void | keyReleaseEvent(QKeyEvent *event) override |
| virtual void | mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event) override |
| virtual void | mouseMoveEvent(QGraphicsSceneMouseEvent *event) override |
| virtual void | mousePressEvent(QGraphicsSceneMouseEvent *event) override |
| virtual void | mouseReleaseEvent(QGraphicsSceneMouseEvent *event) override |
| virtual bool | sceneEvent(QEvent *event) override |
Ausführliche Beschreibung
Wenn Sie in einem Element lediglich einfachen Text anzeigen möchten, sollten Sie stattdessen die Verwendung von ` QGraphicsSimpleTextItem ` in Betracht ziehen.
Um den Text des Elements festzulegen, übergeben Sie ein ` QString ` an den Konstruktor von `QGraphicsTextItem` oder rufen Sie ` setHtml()` bzw. `setPlainText()` auf.
QGraphicsTextItem verwendet die formatierte Größe des Textes und die zugehörige Schriftart, um eine sinnvolle Implementierung von ` boundingRect()`, ` shape()` und ` contains()` bereitzustellen. Sie können die Schriftart festlegen, indem Sie ` setFont()` aufrufen.
Es ist möglich, das Element bearbeitbar zu machen, indem das Flag „ Qt::TextEditorInteraction “ mithilfe von ` setTextInteractionFlags()` gesetzt wird.
Die bevorzugte Textbreite des Elements kann mit „ setTextWidth()“ festgelegt und mit „ textWidth()“ abgerufen werden.
Hinweis: Um HTML-Text zentriert auszurichten, muss die Textbreite des Elements festgelegt sein. Andernfalls können Sie ` adjustSize()` aufrufen, nachdem Sie den Text des Elements festgelegt haben.

Hinweis: QGraphicsTextItem akzeptiert standardmäßig ` hover events `. Sie können dies mit ` setAcceptHoverEvents()` ändern.
Siehe auch „ QGraphicsSimpleTextItem“ , „ QGraphicsPathItem “, „ QGraphicsRectItem “, „ QGraphicsEllipseItem “, „ QGraphicsPixmapItem “, „ QGraphicsPolygonItem “, „ QGraphicsLineItem “ und „Graphics View Framework“.
Dokumentation zu Mitgliedstypen
[anonymous] enum
Der von der virtuellen Funktion ` type()` zurückgegebene Wert.
| Konstante | Wert | Beschreibung |
|---|---|---|
QGraphicsTextItem::Type | 8 | Ein Grafiktextelement |
Eigenschaftsdokumentation
openExternalLinks : bool
Legt fest, ob „ QGraphicsTextItem “ Links automatisch mit „ QDesktopServices::openUrl()“ öffnen soll, anstatt das Signal „ linkActivated “ auszulösen.
Der Standardwert ist „false“.
Zugriffsfunktionen:
| bool | openExternalLinks() const |
| void | setOpenExternalLinks(bool open) |
textCursor : QTextCursor
Diese Eigenschaft stellt den sichtbaren Textcursor in einem bearbeitbaren Textelement dar.
Standardmäßig enthält diese Eigenschaft einen leeren Textcursor, wenn der Text des Elements noch nicht festgelegt wurde; andernfalls enthält sie einen Textcursor, der am Anfang des Dokuments des Elements positioniert ist.
Zugriffsfunktionen:
| QTextCursor | textCursor() const |
| void | setTextCursor(const QTextCursor &cursor) |
Dokumentation zu den Mitgliedsfunktionen
[explicit] QGraphicsTextItem::QGraphicsTextItem(QGraphicsItem *parent = nullptr)
Erstellt ein `QGraphicsTextItem`. ` parent ` wird an den Konstruktor von ` QGraphicsItem` übergeben.
Siehe auch QGraphicsScene::addItem().
[explicit] QGraphicsTextItem::QGraphicsTextItem(const QString &text, QGraphicsItem *parent = nullptr)
Erstellt ein `QGraphicsTextItem` und verwendet dabei ` text ` als Standard-Klartext. ` parent ` wird an den Konstruktor von ` QGraphicsItem` übergeben.
Siehe auch QGraphicsScene::addItem().
[virtual noexcept] QGraphicsTextItem::~QGraphicsTextItem()
Zerstört die „ QGraphicsTextItem “.
void QGraphicsTextItem::adjustSize()
Passt die Größe des Textelements an eine angemessene Größe an.
[override virtual] QRectF QGraphicsTextItem::boundingRect() const
Implementiert: ` QGraphicsItem::boundingRect()` const.
[override virtual] bool QGraphicsTextItem::contains(const QPointF &point) const
Implementiert neu: ` QGraphicsItem::contains(const QPointF &point) const`.
[override virtual protected] void QGraphicsTextItem::contextMenuEvent(QGraphicsSceneContextMenuEvent *event)
Implementiert: ` QGraphicsItem::contextMenuEvent(QGraphicsSceneContextMenuEvent *event)`.
QColor QGraphicsTextItem::defaultTextColor() const
Gibt die Standardtextfarbe zurück, die für unformatierten Text verwendet wird.
Siehe auch „ setDefaultTextColor()“.
QTextDocument *QGraphicsTextItem::document() const
Gibt das Textdokument des Elements zurück.
Siehe auch „ setDocument()“.
[override virtual protected] void QGraphicsTextItem::dragEnterEvent(QGraphicsSceneDragDropEvent *event)
Implementiert: ` QGraphicsItem::dragEnterEvent(QGraphicsSceneDragDropEvent *event)`.
[override virtual protected] void QGraphicsTextItem::dragLeaveEvent(QGraphicsSceneDragDropEvent *event)
Implementiert: ` QGraphicsItem::dragLeaveEvent(QGraphicsSceneDragDropEvent *event)`.
[override virtual protected] void QGraphicsTextItem::dragMoveEvent(QGraphicsSceneDragDropEvent *event)
Implementiert: ` QGraphicsItem::dragMoveEvent(QGraphicsSceneDragDropEvent *event)`.
[override virtual protected] void QGraphicsTextItem::dropEvent(QGraphicsSceneDragDropEvent *event)
Implementiert: ` QGraphicsItem::dropEvent(QGraphicsSceneDragDropEvent *event)`.
[override virtual protected] void QGraphicsTextItem::focusInEvent(QFocusEvent *event)
Implementiert: ` QGraphicsItem::focusInEvent(QFocusEvent *event)`.
[override virtual protected] void QGraphicsTextItem::focusOutEvent(QFocusEvent *event)
Implementiert: ` QGraphicsItem::focusOutEvent(QFocusEvent *event)`.
QFont QGraphicsTextItem::font() const
Gibt die Schriftart des Elements zurück, die zum Darstellen des Textes verwendet wird.
Siehe auch „ setFont()“.
[override virtual protected] void QGraphicsTextItem::hoverEnterEvent(QGraphicsSceneHoverEvent *event)
Implementiert: ` QGraphicsItem::hoverEnterEvent(QGraphicsSceneHoverEvent *event)`.
[override virtual protected] void QGraphicsTextItem::hoverLeaveEvent(QGraphicsSceneHoverEvent *event)
Implementiert: ` QGraphicsItem::hoverLeaveEvent(QGraphicsSceneHoverEvent *event)`.
[override virtual protected] void QGraphicsTextItem::hoverMoveEvent(QGraphicsSceneHoverEvent *event)
Umsetzt: ` QGraphicsItem::hoverMoveEvent(QGraphicsSceneHoverEvent *event)`.
[override virtual protected] void QGraphicsTextItem::inputMethodEvent(QInputMethodEvent *event)
Implementiert: ` QGraphicsItem::inputMethodEvent` (`QInputMethodEvent *event`).
[override virtual protected] QVariant QGraphicsTextItem::inputMethodQuery(Qt::InputMethodQuery query) const
Implementiert neu: ` QGraphicsItem::inputMethodQuery` (Qt::InputMethodQuery query) const.
[override virtual] bool QGraphicsTextItem::isObscuredBy(const QGraphicsItem *item) const
Implementiert: ` QGraphicsItem::isObscuredBy(const QGraphicsItem *item) const`.
[override virtual protected] void QGraphicsTextItem::keyPressEvent(QKeyEvent *event)
Implementiert: ` QGraphicsItem::keyPressEvent(QKeyEvent *event)`.
[override virtual protected] void QGraphicsTextItem::keyReleaseEvent(QKeyEvent *event)
Implementiert: QGraphicsItem::keyReleaseEvent(QKeyEvent *event).
[signal] void QGraphicsTextItem::linkActivated(const QString &link)
Dieses Signal wird ausgelöst, wenn der Benutzer auf einen Link in einem Textelement klickt, der zu Qt::LinksAccessibleByMouse oder Qt::LinksAccessibleByKeyboard führt. link ist der Link, auf den geklickt wurde.
Siehe auch setTextInteractionFlags().
[signal] void QGraphicsTextItem::linkHovered(const QString &link)
Dieses Signal wird ausgelöst, wenn der Benutzer mit der Maus über einen Link in einem Textelement fährt, der Qt::LinksAccessibleByMouse aktiviert. link ist der Link, über den die Maus gefahren wurde.
Siehe auch setTextInteractionFlags().
[override virtual protected] void QGraphicsTextItem::mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event)
Umsetzt: ` QGraphicsItem::mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event)`.
[override virtual protected] void QGraphicsTextItem::mouseMoveEvent(QGraphicsSceneMouseEvent *event)
Umsetzt: ` QGraphicsItem::mouseMoveEvent(QGraphicsSceneMouseEvent *event)`.
[override virtual protected] void QGraphicsTextItem::mousePressEvent(QGraphicsSceneMouseEvent *event)
Umsetzt: ` QGraphicsItem::mousePressEvent(QGraphicsSceneMouseEvent *event)`.
[override virtual protected] void QGraphicsTextItem::mouseReleaseEvent(QGraphicsSceneMouseEvent *event)
Umsetzt: ` QGraphicsItem::mouseReleaseEvent(QGraphicsSceneMouseEvent *event)`.
[override virtual] QPainterPath QGraphicsTextItem::opaqueArea() const
Implementiert erneut: ` QGraphicsItem::opaqueArea()` const.
[override virtual] void QGraphicsTextItem::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget)
Implementiert: ` QGraphicsItem::paint` (`QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget)`.
[override virtual protected] bool QGraphicsTextItem::sceneEvent(QEvent *event)
Umsetzt: ` QGraphicsItem::sceneEvent(QEvent *event)`.
void QGraphicsTextItem::setDefaultTextColor(const QColor &col)
Legt die Farbe für unformatierten Text auf „ col “ fest.
Siehe auch ` defaultTextColor()`.
void QGraphicsTextItem::setDocument(QTextDocument *document)
Legt die Textdokument- document en für das Element fest.
Siehe auch document().
void QGraphicsTextItem::setFont(const QFont &font)
Legt die Schriftart fest, die zum Darstellen des Textelements verwendet wird: „ font “.
Siehe auch „ font()“.
void QGraphicsTextItem::setHtml(const QString &text)
Setzt den Text des Elements auf „ text “, wobei davon ausgegangen wird, dass der Text im HTML-Format vorliegt. Wenn das Element den Tastatureingabefokus hat, ruft diese Funktion zusätzlich „ ensureVisible()“ auf, um sicherzustellen, dass der Text in allen Ansichtsbereichen sichtbar ist.
Siehe auch ` toHtml()`, ` hasFocus()` und ` QGraphicsSimpleTextItem`.
void QGraphicsTextItem::setPlainText(const QString &text)
Setzt den Text des Elements auf „ text “. Wenn das Element den Tastatureingabefokus hat, ruft diese Funktion zusätzlich die Funktion „ ensureVisible()“ auf, um sicherzustellen, dass der Text in allen Ansichtsfenstern sichtbar ist.
Siehe auch ` toHtml()` und ` hasFocus()`.
void QGraphicsTextItem::setTabChangesFocus(bool b)
Wenn „ b “ auf „true“ gesetzt ist, bewirkt die Taste „ Tab “, dass das Widget den Fokus wechselt; andernfalls fügt die Tabulatortaste ein Tabulatorzeichen in das Dokument ein.
In manchen Fällen sollte es dem Benutzer bei Textbearbeitungen nicht gestattet sein, Tabulatorzeichen einzugeben oder die Einrückung mit der Taste „ Tab “ zu ändern, da dies die Fokus-Kette unterbricht. Die Standardeinstellung ist „false“.
Siehe auch tabChangesFocus(), ItemIsFocusable und textInteractionFlags().
void QGraphicsTextItem::setTextInteractionFlags(Qt::TextInteractionFlags flags)
Legt die Flags „ flags “ fest, um zu bestimmen, wie das Textelement auf Benutzereingaben reagieren soll.
Die Standardeinstellung für „ QGraphicsTextItem “ lautet „ Qt::NoTextInteraction “. Diese Funktion wirkt sich auch auf das Flag „ItemIsFocusable“ ( QGraphicsItem ) aus, indem sie es setzt, wenn „ flags “ ungleich „ Qt::NoTextInteraction “ ist, und es andernfalls zurücksetzt.
Standardmäßig ist der Text schreibgeschützt. Um das Element in einen Editor umzuwandeln, setzen Sie das Flag „ Qt::TextEditable “.
Siehe auch „ textInteractionFlags()“.
void QGraphicsTextItem::setTextWidth(qreal width)
Legt die bevorzugte Breite für den Text des Elements fest. Ist der tatsächliche Text breiter als die angegebene Breite, wird er in mehrere Zeilen umgebrochen.
Ist „ width “ auf -1 gesetzt, wird der Text nicht in mehrere Zeilen umgebrochen, es sei denn, dies wird durch einen expliziten Zeilenumbruch oder einen neuen Absatz erzwungen.
Der Standardwert ist -1.
Beachten Sie, dass „ QGraphicsTextItem “ intern einen „ QTextDocument “ verwaltet, der zur Berechnung der Textbreite verwendet wird.
Siehe auch ` textWidth()` und ` QTextDocument::setTextWidth()`.
[override virtual] QPainterPath QGraphicsTextItem::shape() const
Implementiert erneut: ` QGraphicsItem::shape()` const.
bool QGraphicsTextItem::tabChangesFocus() const
Gibt „ true “ zurück, wenn der Schlüssel „ Tab “ dazu führt, dass das Widget den Fokus wechselt; andernfalls wird „false“ zurückgegeben.
Standardmäßig ist dieses Verhalten deaktiviert, und diese Funktion gibt „false“ zurück.
Siehe auch setTabChangesFocus().
Qt::TextInteractionFlags QGraphicsTextItem::textInteractionFlags() const
Gibt die aktuellen Textinteraktionsflags zurück.
Siehe auch „ setTextInteractionFlags()“.
qreal QGraphicsTextItem::textWidth() const
Gibt die Textbreite zurück.
Die Breite wird anhand des „ QTextDocument “ berechnet, das „ QGraphicsTextItem “ intern verwaltet.
Siehe auch setTextWidth() und QTextDocument::textWidth().
QString QGraphicsTextItem::toHtml() const
Gibt den in HTML konvertierten Text des Elements zurück oder ein leeres „ QString “, falls kein Text festgelegt wurde.
Siehe auch setHtml().
QString QGraphicsTextItem::toPlainText() const
Gibt den in einfachen Text konvertierten Text des Elements zurück oder ein leeres „ QString “, falls kein Text festgelegt wurde.
Siehe auch ` setPlainText()`.
[override virtual] int QGraphicsTextItem::type() const
Implementiert: ` 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.