Sur cette page

QGraphicsTextItem Class

La classe QGraphicsTextItem fournit un élément de texte que vous pouvez ajouter à une page QGraphicsScene pour afficher du texte formaté. Plus d'informations...

En-tête : #include <QGraphicsTextItem>
CMake : find_package(Qt6 REQUIRED COMPONENTS Widgets)
target_link_libraries(mytarget PRIVATE Qt6::Widgets)
qmake : QT += widgets
Héritages : QGraphicsObject

Types publics

enum { Type }

Propriétés

Fonctions publiques

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

Fonctions publiques réimplémentées

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

Signaux

void linkActivated(const QString &link)
void linkHovered(const QString &link)

Fonctions protégées réimplémentées

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

Description détaillée

Si vous n'avez besoin que d'afficher du texte brut dans un élément, envisagez plutôt d'utiliser QGraphicsSimpleTextItem.

Pour définir le texte de l'élément, passez un QString au constructeur de QGraphicsTextItem ou appelez setHtml()/setPlainText().

QGraphicsTextItem utilise la taille formatée du texte et la police associée pour fournir une implémentation raisonnable de boundingRect(), shape() et contains(). Vous pouvez définir la police en appelant setFont().

Il est possible de rendre l'élément modifiable en activant le drapeau Qt::TextEditorInteraction à l'aide de setTextInteractionFlags().

La largeur de texte préférée de l'élément peut être définie à l'aide de setTextWidth() et obtenue à l'aide de textWidth().

Remarque : pour que le texte HTML soit aligné au centre, la largeur du texte de l'élément doit être définie. Sinon, vous pouvez appeler adjustSize() après avoir défini le texte de l'élément.

Paragraphe dessiné près de l'origine

Remarque : QGraphicsTextItem accepte hover events par défaut. Vous pouvez modifier cette valeur à l'aide de setAcceptHoverEvents().

Voir aussi QGraphicsSimpleTextItem, QGraphicsPathItem, QGraphicsRectItem, QGraphicsEllipseItem, QGraphicsPixmapItem, QGraphicsPolygonItem, QGraphicsLineItem, et Graphics View Framework.

Documentation sur les types de membres

[anonymous] enum

Valeur retournée par la fonction virtuelle type().

ConstanteValeurDescription de l'élément
QGraphicsTextItem::Type8Un élément de texte graphique

Propriété Documentation

Indique si QGraphicsTextItem doit automatiquement ouvrir les liens en utilisant QDesktopServices::openUrl() au lieu d'émettre le signal linkActivated.

La valeur par défaut est false.

Fonctions d'accès :

bool openExternalLinks() const
void setOpenExternalLinks(bool open)

textCursor : QTextCursor

Cette propriété représente le curseur de texte visible dans un élément de texte éditable.

Par défaut, si le texte de l'élément n'a pas été défini, cette propriété contient un curseur de texte nul ; sinon, elle contient un curseur de texte placé au début du document de l'élément.

Fonctions d'accès :

QTextCursor textCursor() const
void setTextCursor(const QTextCursor &cursor)

Documentation des fonctions membres

[explicit] QGraphicsTextItem::QGraphicsTextItem(QGraphicsItem *parent = nullptr)

Construit un QGraphicsTextItem. parent est transmis au constructeur de QGraphicsItem.

Voir aussi QGraphicsScene::addItem().

[explicit] QGraphicsTextItem::QGraphicsTextItem(const QString &text, QGraphicsItem *parent = nullptr)

Construit un QGraphicsTextItem, en utilisant text comme texte brut par défaut. parent est transmis au constructeur de QGraphicsItem.

Voir aussi QGraphicsScene::addItem().

[virtual noexcept] QGraphicsTextItem::~QGraphicsTextItem()

Détruit le site QGraphicsTextItem.

void QGraphicsTextItem::adjustSize()

Ajuste l'élément de texte à une taille raisonnable.

[override virtual] QRectF QGraphicsTextItem::boundingRect() const

Réimplémente : QGraphicsItem::boundingRect() const.

[override virtual] bool QGraphicsTextItem::contains(const QPointF &point) const

Réimplémente : QGraphicsItem::contains(const QPointF &point) const.

[override virtual protected] void QGraphicsTextItem::contextMenuEvent(QGraphicsSceneContextMenuEvent *event)

Réimplémente : QGraphicsItem::contextMenuEvent(QGraphicsSceneContextMenuEvent *event).

QColor QGraphicsTextItem::defaultTextColor() const

Renvoie la couleur de texte par défaut utilisée pour le texte non formaté.

Voir aussi setDefaultTextColor().

QTextDocument *QGraphicsTextItem::document() const

Renvoie le document texte de l'élément.

Voir aussi setDocument().

[override virtual protected] void QGraphicsTextItem::dragEnterEvent(QGraphicsSceneDragDropEvent *event)

Réimplémente : QGraphicsItem::dragEnterEvent(QGraphicsSceneDragDropEvent *event).

[override virtual protected] void QGraphicsTextItem::dragLeaveEvent(QGraphicsSceneDragDropEvent *event)

Réimplémente : QGraphicsItem::dragLeaveEvent(QGraphicsSceneDragDropEvent *event).

[override virtual protected] void QGraphicsTextItem::dragMoveEvent(QGraphicsSceneDragDropEvent *event)

Réimplémente : QGraphicsItem::dragMoveEvent(QGraphicsSceneDragDropEvent *event).

[override virtual protected] void QGraphicsTextItem::dropEvent(QGraphicsSceneDragDropEvent *event)

Réimplémente : QGraphicsItem::dropEvent(QGraphicsSceneDragDropEvent *event).

[override virtual protected] void QGraphicsTextItem::focusInEvent(QFocusEvent *event)

Réimplémente : QGraphicsItem::focusInEvent(QFocusEvent *event).

[override virtual protected] void QGraphicsTextItem::focusOutEvent(QFocusEvent *event)

Réimplémente : QGraphicsItem::focusOutEvent(QFocusEvent *event).

QFont QGraphicsTextItem::font() const

Renvoie la police de l'élément, qui est utilisée pour le rendu du texte.

Voir aussi setFont().

[override virtual protected] void QGraphicsTextItem::hoverEnterEvent(QGraphicsSceneHoverEvent *event)

Réimplémente : QGraphicsItem::hoverEnterEvent(QGraphicsSceneHoverEvent *event).

[override virtual protected] void QGraphicsTextItem::hoverLeaveEvent(QGraphicsSceneHoverEvent *event)

Réimplémente : QGraphicsItem::hoverLeaveEvent(QGraphicsSceneHoverEvent *event).

[override virtual protected] void QGraphicsTextItem::hoverMoveEvent(QGraphicsSceneHoverEvent *event)

Réimplémente : QGraphicsItem::hoverMoveEvent(QGraphicsSceneHoverEvent *event).

[override virtual protected] void QGraphicsTextItem::inputMethodEvent(QInputMethodEvent *event)

Réimplémente : QGraphicsItem::inputMethodEvent(QInputMethodEvent *event).

[override virtual protected] QVariant QGraphicsTextItem::inputMethodQuery(Qt::InputMethodQuery query) const

Réimplémente : QGraphicsItem::inputMethodQuery(Qt::InputMethodQuery query) const.

[override virtual] bool QGraphicsTextItem::isObscuredBy(const QGraphicsItem *item) const

Réimplémente : QGraphicsItem::isObscuredBy(const QGraphicsItem *item) const.

[override virtual protected] void QGraphicsTextItem::keyPressEvent(QKeyEvent *event)

Réimplémente : QGraphicsItem::keyPressEvent(QKeyEvent *event).

[override virtual protected] void QGraphicsTextItem::keyReleaseEvent(QKeyEvent *event)

Réimplémente : QGraphicsItem::keyReleaseEvent(QKeyEvent *event).

[signal] void QGraphicsTextItem::linkActivated(const QString &link)

Ce signal est émis lorsque l'utilisateur clique sur un lien dans un élément de texte qui active Qt::LinksAccessibleByMouse ou Qt::LinksAccessibleByKeyboard. link est le lien sur lequel il a cliqué.

Voir aussi setTextInteractionFlags().

[signal] void QGraphicsTextItem::linkHovered(const QString &link)

Ce signal est émis lorsque l'utilisateur survole un lien sur un élément de texte qui active Qt::LinksAccessibleByMouse. link est le lien qui a été survolé.

Voir aussi setTextInteractionFlags().

[override virtual protected] void QGraphicsTextItem::mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event)

Réimplémente : QGraphicsItem::mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event).

[override virtual protected] void QGraphicsTextItem::mouseMoveEvent(QGraphicsSceneMouseEvent *event)

Réimplémente : QGraphicsItem::mouseMoveEvent(QGraphicsSceneMouseEvent *event).

[override virtual protected] void QGraphicsTextItem::mousePressEvent(QGraphicsSceneMouseEvent *event)

Réimplémente : QGraphicsItem::mousePressEvent(QGraphicsSceneMouseEvent *event).

[override virtual protected] void QGraphicsTextItem::mouseReleaseEvent(QGraphicsSceneMouseEvent *event)

Réimplémente : QGraphicsItem::mouseReleaseEvent(QGraphicsSceneMouseEvent *event).

[override virtual] QPainterPath QGraphicsTextItem::opaqueArea() const

Réimplémente : QGraphicsItem::opaqueArea() const.

[override virtual] void QGraphicsTextItem::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget)

Réimplémente : QGraphicsItem::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget).

[override virtual protected] bool QGraphicsTextItem::sceneEvent(QEvent *event)

Réimplémente : QGraphicsItem::sceneEvent(QEvent *event).

void QGraphicsTextItem::setDefaultTextColor(const QColor &col)

Définit la couleur du texte non formaté à col.

Voir aussi defaultTextColor().

void QGraphicsTextItem::setDocument(QTextDocument *document)

Définit le document texte document sur l'élément.

Voir également document().

void QGraphicsTextItem::setFont(const QFont &font)

Définit la police utilisée pour le rendu de l'élément de texte à font.

Voir aussi font().

void QGraphicsTextItem::setHtml(const QString &text)

Définit le texte de l'élément à text, en supposant que le texte est formaté en HTML. Si l'élément est centré sur la saisie au clavier, cette fonction appelle également ensureVisible() pour s'assurer que le texte est visible dans toutes les fenêtres de visualisation.

Voir également toHtml(), hasFocus() et QGraphicsSimpleTextItem.

void QGraphicsTextItem::setPlainText(const QString &text)

Définit le texte de l'élément à text. Si l'élément est centré sur le clavier, cette fonction appellera également ensureVisible() pour s'assurer que le texte est visible dans toutes les fenêtres de visualisation.

Voir également toHtml() et hasFocus().

void QGraphicsTextItem::setTabChangesFocus(bool b)

Si b est vrai, la touche Tab fera changer le widget de focus ; sinon, la touche de tabulation insérera une tabulation dans le document.

Dans certains cas, les éditeurs de texte ne doivent pas permettre à l'utilisateur de saisir des tabulateurs ou de modifier l'indentation à l'aide de la touche Tab, car cela rompt la chaîne de focalisation. La valeur par défaut est false.

Voir également tabChangesFocus(), ItemIsFocusable, et textInteractionFlags().

void QGraphicsTextItem::setTextInteractionFlags(Qt::TextInteractionFlags flags)

Définit les drapeaux flags pour spécifier comment l'élément de texte doit réagir à la saisie de l'utilisateur.

La valeur par défaut pour QGraphicsTextItem est Qt::NoTextInteraction. Cette fonction affecte également l'indicateur ItemIsFocusable QGraphicsItem en l'activant si flags est différent de Qt::NoTextInteraction et en le désactivant dans le cas contraire.

Par défaut, le texte est en lecture seule. Pour transformer l'élément en éditeur, activez l'indicateur Qt::TextEditable.

Voir aussi textInteractionFlags().

void QGraphicsTextItem::setTextWidth(qreal width)

Définit la largeur préférée pour le texte de l'élément. Si le texte est plus large que la largeur spécifiée, il sera divisé en plusieurs lignes.

Si width vaut -1, le texte ne sera pas divisé en plusieurs lignes, à moins que cela ne soit imposé par un saut de ligne explicite ou un nouveau paragraphe.

La valeur par défaut est -1.

Notez que QGraphicsTextItem conserve en interne une valeur QTextDocument, qui est utilisée pour calculer la largeur du texte.

Voir aussi textWidth() et QTextDocument::setTextWidth().

[override virtual] QPainterPath QGraphicsTextItem::shape() const

Réimplémente : QGraphicsItem::shape() const.

bool QGraphicsTextItem::tabChangesFocus() const

Renvoie true si la touche Tab entraîne le changement de focus du widget ; sinon, la fonction renvoie false.

Par défaut, ce comportement est désactivé et cette fonction renvoie false.

Voir également setTabChangesFocus().

Qt::TextInteractionFlags QGraphicsTextItem::textInteractionFlags() const

Renvoie les drapeaux d'interaction avec le texte en cours.

Voir aussi setTextInteractionFlags().

qreal QGraphicsTextItem::textWidth() const

Renvoie la largeur du texte.

La largeur est calculée à l'aide de QTextDocument que QGraphicsTextItem conserve en interne.

Voir aussi setTextWidth() et QTextDocument::textWidth().

QString QGraphicsTextItem::toHtml() const

Renvoie le texte de l'élément converti en HTML, ou un QString vide si aucun texte n'a été défini.

Voir aussi setHtml().

QString QGraphicsTextItem::toPlainText() const

Renvoie le texte de l'élément converti en texte brut, ou un QString vide si aucun texte n'a été défini.

Voir aussi setPlainText().

[override virtual] int QGraphicsTextItem::type() const

Réimplémente : 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.