Spec-Zone.ru › Qt 6.0

Класс QGraphicsTextItem

Класс QGraphicsTextItem предоставляет элемент текста, который можно добавить в QGraphicsScene для отображения форматированного текста. Подробнее...

Заголовок: #include <QGraphicsTextItem>
CMake: find_package(Qt6 COMPONENTS Widgets REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Widgets)
qmake: QT += widgets
Наследует: QGraphicsObject
  • Список всех членов, включая наследуемые

Открытые типы

Перечисление безымянный { Type }

Свойства

  • openExternalLinks : bool
  • textCursor : QTextCursor

Открытые функции

QGraphicsTextItem(const QString &text, QGraphicsItem *parent = nullptr)
QGraphicsTextItem(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

Переопределённые открытые функции

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

Сигналы

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

Переопределённые защищённые функции

виртуальный void contextMenuEvent(QGraphicsSceneContextMenuEvent *event) override
виртуальный void dragEnterEvent(QGraphicsSceneDragDropEvent *event) override
виртуальный void dragLeaveEvent(QGraphicsSceneDragDropEvent *event) override
виртуальный void dragMoveEvent(QGraphicsSceneDragDropEvent *event) override
виртуальный void dropEvent(QGraphicsSceneDragDropEvent *event) override
виртуальный void focusInEvent(QFocusEvent *event) override
виртуальный void focusOutEvent(QFocusEvent *event) override
виртуальный void hoverEnterEvent(QGraphicsSceneHoverEvent *event) override
виртуальный void hoverLeaveEvent(QGraphicsSceneHoverEvent *event) override
виртуальный void hoverMoveEvent(QGraphicsSceneHoverEvent *event) override
виртуальный void inputMethodEvent(QInputMethodEvent *event) override
виртуальный QVariant inputMethodQuery(Qt::InputMethodQuery query) const override
виртуальный void keyPressEvent(QKeyEvent *event) override
виртуальный void keyReleaseEvent(QKeyEvent *event) override
виртуальный void mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event) override
виртуальный void mouseMoveEvent(QGraphicsSceneMouseEvent *event) override
виртуальный void mousePressEvent(QGraphicsSceneMouseEvent *event) override
виртуальный void mouseReleaseEvent(QGraphicsSceneMouseEvent *event) override
виртуальный bool sceneEvent(QEvent *event) override

Подробное описание

Если вам нужно отобразить только обычный текст в элементе, используйте QGraphicsSimpleTextItem вместо этого.

Для установки текста элемента передайте QString в конструктор QGraphicsTextItem или вызовите setHtml()/setPlainText().

QGraphicsTextItem использует отформатированный размер текста и связанный шрифт, чтобы обеспечить разумную реализацию boundingRect(), shape() и contains(). Вы можете установить шрифт, вызвав setFont().

Можно сделать элемент редактируемым, установив флаг Qt::TextEditorInteraction с помощью setTextInteractionFlags().

Предпочтительную ширину текста элемента можно установить с помощью setTextWidth() и получить с помощью textWidth().

Примечание: Для выравнивания текста HTML по центру необходимо установить ширину текста элемента. В противном случае можно вызвать adjustSize() после установки текста элемента.

Примечание: QGraphicsTextItem по умолчанию принимает события наведения. Вы можете изменить это с помощью setAcceptHoverEvents().

См. также QGraphicsSimpleTextItem, QGraphicsPathItem, QGraphicsRectItem, QGraphicsEllipseItem, QGraphicsPixmapItem, QGraphicsPolygonItem, QGraphicsLineItem и Графический фреймворк просмотра.

Документация по типам членов

enum QGraphicsTextItem::anonymous

Значение, возвращаемое виртуальной функцией type().

Константа Значение Описание
QGraphicsTextItem::Type 8 Элемент графического текста

Документация по свойствам

openExternalLinks : bool

Указывает, должен ли QGraphicsTextItem автоматически открывать ссылки с помощью QDesktopServices::openUrl() вместо излучения сигнала linkActivated.

Значение по умолчанию — false.

Функции доступа:

bool openExternalLinks() const
void setOpenExternalLinks(bool open)

textCursor : QTextCursor

Это свойство представляет видимый курсор текста в редактируемом элементе текста.

По умолчанию, если текст элемента не установлен, это свойство содержит нулевой курсор текста; в противном случае оно содержит курсор текста, размещенный в начале документа элемента.

Функции доступа:

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

Документация по функциям-членам

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

Создает QGraphicsTextItem, используя text в качестве стандартного простого текста. parent передается конструктору QGraphicsItem.

См. также QGraphicsScene::addItem().

QGraphicsTextItem::QGraphicsTextItem(QGraphicsItem *parent = nullptr)

Создает QGraphicsTextItem. parent передается конструктору QGraphicsItem.

См. также QGraphicsScene::addItem().

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

Этот сигнал излучается, когда пользователь нажимает на ссылку в элементе текста, который включает Qt::LinksAccessibleByMouse или Qt::LinksAccessibleByKeyboard. link — это ссылка, на которую был нажат.

См. также setTextInteractionFlags().

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

Этот сигнал излучается, когда пользователь наводит указатель на ссылку в элементе текста, который включает Qt::LinksAccessibleByMouse. link — это ссылка, на которой был указатель.

См. также setTextInteractionFlags().

[virtual] QGraphicsTextItem::~QGraphicsTextItem()

Уничтожает QGraphicsTextItem.

void QGraphicsTextItem::adjustSize()

Настраивает размер элемента текста до разумного значения.

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

Переопределяет: QGraphicsItem::boundingRect() const.

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

Переопределяет: QGraphicsItem::contains(const QPointF &point) const.

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

Переопределяет: QGraphicsItem::contextMenuEvent(QGraphicsSceneContextMenuEvent *event).

QColor QGraphicsTextItem::defaultTextColor() const

Возвращает цвет текста по умолчанию, используемый для неформатированного текста.

См. также setDefaultTextColor().

QTextDocument *QGraphicsTextItem::document() const

Возвращает текстовый документ элемента.

См. также setDocument().

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

Переопределяет: QGraphicsItem::dragEnterEvent(QGraphicsSceneDragDropEvent *event).

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

Переопределяет: QGraphicsItem::dragLeaveEvent(QGraphicsSceneDragDropEvent *event).

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

Переопределяет: QGraphicsItem::dragMoveEvent(QGraphicsSceneDragDropEvent *event).

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

Переопределяет: QGraphicsItem::dropEvent(QGraphicsSceneDragDropEvent *event).

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

Переопределяет: QGraphicsItem::focusInEvent(QFocusEvent *event).

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

Переопределяет: QGraphicsItem::focusOutEvent(QFocusEvent *event).

QFont QGraphicsTextItem::font() const

Возвращает шрифт элемента, используемый для отображения текста.

См. также setFont().

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

Переопределяет: QGraphicsItem::hoverEnterEvent(QGraphicsSceneHoverEvent *event).

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

Переопределяет: QGraphicsItem::hoverLeaveEvent(QGraphicsSceneHoverEvent *event).

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

Переопределяет: QGraphicsItem::hoverMoveEvent(QGraphicsSceneHoverEvent *event).

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

Переопределяет: QGraphicsItem::inputMethodEvent(QInputMethodEvent *event).

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

Переопределяет: QGraphicsItem::inputMethodQuery(Qt::InputMethodQuery query) const.

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

Переопределяет: QGraphicsItem::isObscuredBy(const QGraphicsItem *item) const.

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

Переопределяет: QGraphicsItem::keyPressEvent(QKeyEvent *event).

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

Переопределяет: QGraphicsItem::keyReleaseEvent(QKeyEvent *event).

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

Переопределяет: QGraphicsItem::mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event).

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

Переопределяет: QGraphicsItem::mouseMoveEvent(QGraphicsSceneMouseEvent *event).

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

Переопределяет: QGraphicsItem::mousePressEvent(QGraphicsSceneMouseEvent *event).

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

Переопределяет: QGraphicsItem::mouseReleaseEvent(QGraphicsSceneMouseEvent *event).

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

Переопределяет: QGraphicsItem::opaqueArea() const.

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

Переопределяет: QGraphicsItem::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget).

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

Переопределяет: QGraphicsItem::sceneEvent(QEvent *event).

void QGraphicsTextItem::setDefaultTextColor(const QColor &col)

Устанавливает цвет неформатированного текста на col.

См. также defaultTextColor().

void QGraphicsTextItem::setDocument(QTextDocument *document)

Устанавливает текстовый документ document для элемента.

См. также document().

void QGraphicsTextItem::setFont(const QFont &font)

Устанавливает шрифт для рендеринга текстового элемента на font.

См. также font().

void QGraphicsTextItem::setHtml(const QString &text)

Устанавливает текст элемента на text, предполагая, что текст отформатирован в формате HTML. Если у элемента есть фокус клавиатуры, эта функция также вызовет ensureVisible(), чтобы гарантировать, что текст виден во всех окнах просмотра.

См. также toHtml(), hasFocus() и QGraphicsSimpleTextItem.

void QGraphicsTextItem::setPlainText(const QString &text)

Устанавливает текст элемента на text. Если у элемента есть фокус клавиатуры, эта функция также вызовет ensureVisible(), чтобы гарантировать, что текст виден во всех окнах просмотра.

См. также toHtml() и hasFocus().

void QGraphicsTextItem::setTabChangesFocus(bool b)

Если b истинно, нажатие клавиши Tab вызовет изменение фокуса виджета; в противном случае клавиша Tab вставит табуляцию в документ.

В некоторых случаях редактирование текста не должно позволять пользователю вводить табуляцию или изменять отступы с помощью клавиши Tab, так как это нарушает цепочку фокуса. По умолчанию значение ложно.

См. также tabChangesFocus(), ItemIsFocusable и textInteractionFlags().

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

Устанавливает флаги flags, определяющие, как элемент текста должен реагировать на пользовательский ввод.

По умолчанию для QGraphicsTextItem задано значение Qt::NoTextInteraction. Эта функция также влияет на флаг ItemIsFocusable элемента QGraphicsItem, устанавливая его, если flags отличается от Qt::NoTextInteraction, и очищая его в противном случае.

По умолчанию текст является только для чтения. Чтобы преобразовать элемент в редактор, установите флаг Qt::TextEditable.

См. также textInteractionFlags().

void QGraphicsTextItem::setTextWidth(qreal width)

Устанавливает предпочтительную ширину текста элемента. Если фактический текст шире заданной ширины, он будет разбиваться на несколько строк.

Если width установлено в -1, текст не будет разбиваться на несколько строк, если это не выполняется явным переносом строки или новым абзацем.

Значение по умолчанию равно -1.

Обратите внимание, что QGraphicsTextItem хранит QTextDocument внутри, который используется для вычисления ширины текста.

См. также textWidth() и QTextDocument::setTextWidth().

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

Переопределяет: QGraphicsItem::shape() const.

bool QGraphicsTextItem::tabChangesFocus() const

Возвращает true, если нажатие клавиши Tab вызовет изменение фокуса виджета; в противном случае возвращает false.

По умолчанию это поведение отключено, и эта функция вернёт false.

См. также setTabChangesFocus().

Qt::TextInteractionFlags QGraphicsTextItem::textInteractionFlags() const

Возвращает текущие флаги взаимодействия с текстом.

См. также setTextInteractionFlags().

qreal QGraphicsTextItem::textWidth() const

Возвращает ширину текста.

Ширина вычисляется с помощью QTextDocument, который QGraphicsTextItem хранит внутри.

См. также setTextWidth() и QTextDocument::textWidth().

QString QGraphicsTextItem::toHtml() const

Возвращает текст элемента, преобразованный в HTML, или пустую QString, если текст не задан.

См. также setHtml().

QString QGraphicsTextItem::toPlainText() const

Возвращает текст элемента, преобразованный в обычный текст, или пустую QString, если текст не задан.

См. также setPlainText().

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

Переопределяет: QGraphicsItem::type() const.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.0/qgraphicstextitem.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API