Spec-Zone.ru › Qt

Класс 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)

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

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

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

Если вам нужно отобразить только обычный текст в элементе, используйте 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 и Графический фреймворк.

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

перечисление 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().

END_OF_DOCUMENT_MARKER

void QGraphicsTextItem::setTabChangesFocus(bool b)

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

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

См. также 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.2/qgraphicstextitem.html

Spec-Zone.ru

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