Spec-Zone.ru › Qt 6.1

Класс QGraphicsTextItem

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

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

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

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

Свойства

  • openExternalLinks : bool
  • textCursor : QTextCursor

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

QGraphicsTextItem(const QString &text, QGraphicsItem *parent = nullptr)
QGraphicsTextItem(QGraphicsItem *parent = nullptr)
виртуальный ~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

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

виртуальный QRectF boundingRect() const override
виртуальный bool contains(const QPointF &point) const override
виртуальный bool isObscuredBy(const QGraphicsItem *item) const override
виртуальный QPainterPath opaqueArea() const override
виртуальный void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget) override
виртуальный QPainterPath shape() const override
виртуальный 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. Эта функция также влияет на флаг QGraphicsItem ItemIsFocusable, устанавливая его, если 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.1/qgraphicstextitem.html

Spec-Zone.ru

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