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
- openExternalLinks : bool
- textCursor : QTextCursor
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.

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().
| Constante | Valeur | Description de l'élément |
|---|---|---|
QGraphicsTextItem::Type | 8 | Un élément de texte graphique |
Propriété Documentation
openExternalLinks : bool
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.