QGraphicsTextItem Class
La clase QGraphicsTextItem proporciona un elemento de texto que se puede añadir a un QGraphicsScene para mostrar texto formateado. Más...
| Cabecera: | #include <QGraphicsTextItem> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Widgets)target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
| qmake: | QT += widgets |
| Hereda: | QGraphicsObject |
Tipos públicos
| enum { Type } |
Propiedades
- openExternalLinks : bool
- textCursor : QTextCursor
Funciones públicas
| 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 |
Funciones públicas reimplementadas
| 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 |
Señales
| void | linkActivated(const QString &link) |
| void | linkHovered(const QString &link) |
Funciones protegidas reimplementadas
| 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 |
Descripción detallada
Si sólo necesitas mostrar texto plano en un ítem, considera usar QGraphicsSimpleTextItem en su lugar.
Para establecer el texto del elemento, pasa un QString al constructor de QGraphicsTextItem, o llama a setHtml()/setPlainText().
QGraphicsTextItem utiliza el tamaño del texto formateado y la fuente asociada para proporcionar una implementación razonable de boundingRect(), shape(), y contains(). Puede establecer el tipo de letra llamando a setFont().
Es posible hacer que el elemento sea editable estableciendo la bandera Qt::TextEditorInteraction utilizando setTextInteractionFlags().
El ancho de texto preferido del elemento puede establecerse utilizando setTextWidth() y obtenerse utilizando textWidth().
Nota: Para alinear el texto HTML en el centro, debe establecerse la anchura del texto del elemento. De lo contrario, puede llamar a adjustSize() después de establecer el texto del elemento.

Nota: QGraphicsTextItem acepta hover events por defecto. Puedes cambiar esto con setAcceptHoverEvents().
Ver también QGraphicsSimpleTextItem, QGraphicsPathItem, QGraphicsRectItem, QGraphicsEllipseItem, QGraphicsPixmapItem, QGraphicsPolygonItem, QGraphicsLineItem, y Graphics View Framework.
Documentación de tipos de miembros
[anonymous] enum
El valor devuelto por la función virtual type().
| Constante | Valor | Descripción |
|---|---|---|
QGraphicsTextItem::Type | 8 | Un elemento de texto gráfico |
Propiedad Documentación
openExternalLinks : bool
Especifica si QGraphicsTextItem debe abrir automáticamente los enlaces utilizando QDesktopServices::openUrl() en lugar de emitir la señal linkActivated.
El valor por defecto es false.
Funciones de acceso:
| bool | openExternalLinks() const |
| void | setOpenExternalLinks(bool open) |
textCursor : QTextCursor
Esta propiedad representa el cursor de texto visible en un elemento de texto editable.
Por defecto, si no se ha establecido el texto del elemento, esta propiedad contiene un cursor de texto nulo; en caso contrario, contiene un cursor de texto situado al principio del documento del elemento.
Funciones de acceso:
| QTextCursor | textCursor() const |
| void | setTextCursor(const QTextCursor &cursor) |
Documentación de las funciones miembro
[explicit] QGraphicsTextItem::QGraphicsTextItem(QGraphicsItem *parent = nullptr)
Construye un QGraphicsTextItem. parent es pasado al constructor de QGraphicsItem.
Ver también QGraphicsScene::addItem().
[explicit] QGraphicsTextItem::QGraphicsTextItem(const QString &text, QGraphicsItem *parent = nullptr)
Construye un QGraphicsTextItem, usando text como texto plano por defecto. parent se pasa al constructor de QGraphicsItem.
Ver también QGraphicsScene::addItem().
[virtual noexcept] QGraphicsTextItem::~QGraphicsTextItem()
Destruye el QGraphicsTextItem.
void QGraphicsTextItem::adjustSize()
Ajusta el elemento de texto a un tamaño razonable.
[override virtual] QRectF QGraphicsTextItem::boundingRect() const
Reimplementa: QGraphicsItem::boundingRect() const.
[override virtual] bool QGraphicsTextItem::contains(const QPointF &point) const
Reimplementa: QGraphicsItem::contains(const QPointF &point) const.
[override virtual protected] void QGraphicsTextItem::contextMenuEvent(QGraphicsSceneContextMenuEvent *event)
Reimplementa: QGraphicsItem::contextMenuEvent(QGraphicsSceneContextMenuEvent *event).
QColor QGraphicsTextItem::defaultTextColor() const
Devuelve el color de texto por defecto que se utiliza para el texto sin formato.
Véase también setDefaultTextColor().
QTextDocument *QGraphicsTextItem::document() const
Devuelve el documento de texto del elemento.
Véase también setDocument().
[override virtual protected] void QGraphicsTextItem::dragEnterEvent(QGraphicsSceneDragDropEvent *event)
Reimplementa: QGraphicsItem::dragEnterEvent(QGraphicsSceneDragDropEvent *event).
[override virtual protected] void QGraphicsTextItem::dragLeaveEvent(QGraphicsSceneDragDropEvent *event)
Reimplementa: QGraphicsItem::dragLeaveEvent(QGraphicsSceneDragDropEvent *event).
[override virtual protected] void QGraphicsTextItem::dragMoveEvent(QGraphicsSceneDragDropEvent *event)
Reimplementa: QGraphicsItem::dragMoveEvent(QGraphicsSceneDragDropEvent *event).
[override virtual protected] void QGraphicsTextItem::dropEvent(QGraphicsSceneDragDropEvent *event)
Reimplementa: QGraphicsItem::dropEvent(QGraphicsSceneDragDropEvent *event).
[override virtual protected] void QGraphicsTextItem::focusInEvent(QFocusEvent *event)
Reimplementa: QGraphicsItem::focusInEvent(QFocusEvent *event).
[override virtual protected] void QGraphicsTextItem::focusOutEvent(QFocusEvent *event)
Reimplementa: QGraphicsItem::focusOutEvent(QFocusEvent *event).
QFont QGraphicsTextItem::font() const
Devuelve la fuente del elemento, que se utiliza para representar el texto.
Véase también setFont().
[override virtual protected] void QGraphicsTextItem::hoverEnterEvent(QGraphicsSceneHoverEvent *event)
Reimplementa: QGraphicsItem::hoverEnterEvent(QGraphicsSceneHoverEvent *event).
[override virtual protected] void QGraphicsTextItem::hoverLeaveEvent(QGraphicsSceneHoverEvent *event)
Reimplementa: QGraphicsItem::hoverLeaveEvent(QGraphicsSceneHoverEvent *event).
[override virtual protected] void QGraphicsTextItem::hoverMoveEvent(QGraphicsSceneHoverEvent *event)
Reimplementa: QGraphicsItem::hoverMoveEvent(QGraphicsSceneHoverEvent *event).
[override virtual protected] void QGraphicsTextItem::inputMethodEvent(QInputMethodEvent *event)
Reimplementa: QGraphicsItem::inputMethodEvent(QInputMethodEvent *event).
[override virtual protected] QVariant QGraphicsTextItem::inputMethodQuery(Qt::InputMethodQuery query) const
Reimplementa: QGraphicsItem::inputMethodQuery(Qt::InputMethodQuery query) const.
[override virtual] bool QGraphicsTextItem::isObscuredBy(const QGraphicsItem *item) const
Reimplementa: QGraphicsItem::isObscuredBy(const QGraphicsItem *item) const.
[override virtual protected] void QGraphicsTextItem::keyPressEvent(QKeyEvent *event)
Reimplementa: QGraphicsItem::keyPressEvent(QKeyEvent *event).
[override virtual protected] void QGraphicsTextItem::keyReleaseEvent(QKeyEvent *event)
Reimplementa: QGraphicsItem::keyReleaseEvent(QKeyEvent *event).
[signal] void QGraphicsTextItem::linkActivated(const QString &link)
Esta señal se emite cuando el usuario hace clic en un enlace de un elemento de texto que activa Qt::LinksAccessibleByMouse o Qt::LinksAccessibleByKeyboard. link es el enlace en el que se ha hecho clic.
Véase también setTextInteractionFlags().
[signal] void QGraphicsTextItem::linkHovered(const QString &link)
Esta señal se emite cuando el usuario pasa el ratón por encima de un enlace de un elemento de texto que permite Qt::LinksAccessibleByMouse. link es el enlace sobre el que se ha pasado el ratón.
Véase también setTextInteractionFlags().
[override virtual protected] void QGraphicsTextItem::mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event)
Reimplementa: QGraphicsItem::mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event).
[override virtual protected] void QGraphicsTextItem::mouseMoveEvent(QGraphicsSceneMouseEvent *event)
Reimplementa: QGraphicsItem::mouseMoveEvent(QGraphicsSceneMouseEvent *event).
[override virtual protected] void QGraphicsTextItem::mousePressEvent(QGraphicsSceneMouseEvent *event)
Reimplementa: QGraphicsItem::mousePressEvent(QGraphicsSceneMouseEvent *event).
[override virtual protected] void QGraphicsTextItem::mouseReleaseEvent(QGraphicsSceneMouseEvent *event)
Reimplementa: QGraphicsItem::mouseReleaseEvent(QGraphicsSceneMouseEvent *event).
[override virtual] QPainterPath QGraphicsTextItem::opaqueArea() const
Reimplementa: QGraphicsItem::opaqueArea() const.
[override virtual] void QGraphicsTextItem::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget)
Reimplementa: QGraphicsItem::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget).
[override virtual protected] bool QGraphicsTextItem::sceneEvent(QEvent *event)
Reimplementa: QGraphicsItem::sceneEvent(QEvent *event).
void QGraphicsTextItem::setDefaultTextColor(const QColor &col)
Establece el color del texto sin formato en col.
Véase también defaultTextColor().
void QGraphicsTextItem::setDocument(QTextDocument *document)
Establece el documento de texto document en el elemento.
Véase también document().
void QGraphicsTextItem::setFont(const QFont &font)
Establece la fuente utilizada para representar el elemento de texto en font.
Véase también font().
void QGraphicsTextItem::setHtml(const QString &text)
Establece el texto del elemento en text, asumiendo que el texto tiene formato HTML. Si el elemento tiene foco de entrada de teclado, esta función también llamará a ensureVisible() para asegurarse de que el texto es visible en todos los viewports.
Véase también toHtml(), hasFocus(), y QGraphicsSimpleTextItem.
void QGraphicsTextItem::setPlainText(const QString &text)
Establece el texto del elemento en text. Si el elemento tiene el foco de entrada de teclado, esta función también llamará a ensureVisible() para asegurarse de que el texto es visible en todas las ventanas gráficas.
Véase también toHtml() y hasFocus().
void QGraphicsTextItem::setTabChangesFocus(bool b)
Si b es verdadero, la tecla Tab hará que el widget cambie de foco; en caso contrario, la tecla tabulador insertará un tabulador en el documento.
En algunas ocasiones las ediciones de texto no deberían permitir al usuario introducir tabuladores o cambiar la sangría utilizando la tecla Tab, ya que esto rompe la cadena de enfoque. El valor por defecto es false.
Véase también tabChangesFocus(), ItemIsFocusable, y textInteractionFlags().
void QGraphicsTextItem::setTextInteractionFlags(Qt::TextInteractionFlags flags)
Establece los indicadores flags para especificar cómo debe reaccionar el elemento de texto a la entrada del usuario.
El valor predeterminado para QGraphicsTextItem es Qt::NoTextInteraction. Esta función también afecta a la bandera ItemIsFocusable QGraphicsItem fijándola si flags es diferente de Qt::NoTextInteraction y borrándola en caso contrario.
Por defecto, el texto es de sólo lectura. Para transformar el elemento en un editor, active el indicador Qt::TextEditable.
Véase también textInteractionFlags().
void QGraphicsTextItem::setTextWidth(qreal width)
Establece el ancho preferido para el texto del elemento. Si el texto es más ancho que la anchura especificada, se dividirá en varias líneas.
Si width es -1, el texto no se dividirá en varias líneas a menos que se aplique un salto de línea explícito o un nuevo párrafo.
El valor por defecto es -1.
Tenga en cuenta que QGraphicsTextItem mantiene internamente un QTextDocument, que se utiliza para calcular la anchura del texto.
Véase también textWidth() y QTextDocument::setTextWidth().
[override virtual] QPainterPath QGraphicsTextItem::shape() const
Reimplementa: QGraphicsItem::shape() const.
bool QGraphicsTextItem::tabChangesFocus() const
Devuelve true si la tecla Tab hará que el widget cambie de foco; en caso contrario, devuelve false.
Por defecto, este comportamiento está desactivado, y esta función devolverá false.
Véase también setTabChangesFocus().
Qt::TextInteractionFlags QGraphicsTextItem::textInteractionFlags() const
Devuelve las banderas de interacción de texto actuales.
Véase también setTextInteractionFlags().
qreal QGraphicsTextItem::textWidth() const
Devuelve el ancho del texto.
El ancho se calcula con el QTextDocument que QGraphicsTextItem guarda internamente.
Véase también setTextWidth() y QTextDocument::textWidth().
QString QGraphicsTextItem::toHtml() const
Devuelve el texto del elemento convertido a HTML, o un QString vacío si no se ha establecido ningún texto.
Véase también setHtml().
QString QGraphicsTextItem::toPlainText() const
Devuelve el texto del elemento convertido a texto plano, o un QString vacío si no se ha establecido ningún texto.
Véase también setPlainText().
[override virtual] int QGraphicsTextItem::type() const
Reimplementa: 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.