Spec-Zone.ru › Qt 5.13

Класс QGraphicsTextItem

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

Заголовок: #include <QGraphicsTextItem>
qmake: QT += widgets
С тех пор: Qt 4.2
Наследуется от: QGraphicsObject

Этот класс был представлен в Qt 4.2.

  • Список всех членов, включая унаследованные

Типы Public

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

Свойства

  • openExternalLinks : bool
  • textCursor : QTextCursor

Функции Public

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

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

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

Reimplements: QGraphicsItem::contains(const QPointF &point) const.

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

Reimplements: QGraphicsItem::contextMenuEvent(QGraphicsSceneContextMenuEvent *event).

QColor QGraphicsTextItem::defaultTextColor() const

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

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

QTextDocument *QGraphicsTextItem::document() const

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

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

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

Reimplements: QGraphicsItem::dragEnterEvent(QGraphicsSceneDragDropEvent *event).

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

Reimplements: QGraphicsItem::dragLeaveEvent(QGraphicsSceneDragDropEvent *event).

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

Reimplements: QGraphicsItem::dragMoveEvent(QGraphicsSceneDragDropEvent *event).

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

Reimplements: QGraphicsItem::dropEvent(QGraphicsSceneDragDropEvent *event).

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

Reimplements: QGraphicsItem::focusInEvent(QFocusEvent *event).

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

Reimplements: QGraphicsItem::focusOutEvent(QFocusEvent *event).

QFont QGraphicsTextItem::font() const

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

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

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

Reimplements: QGraphicsItem::hoverEnterEvent(QGraphicsSceneHoverEvent *event).

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

Reimplements: QGraphicsItem::hoverLeaveEvent(QGraphicsSceneHoverEvent *event).

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

Reimplements: QGraphicsItem::hoverMoveEvent(QGraphicsSceneHoverEvent *event).

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

Reimplements: QGraphicsItem::inputMethodEvent(QInputMethodEvent *event).

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

Reimplements: QGraphicsItem::inputMethodQuery(Qt::InputMethodQuery query) const.

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

Reimplements: QGraphicsItem::isObscuredBy(const QGraphicsItem *item) const.

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

Reimplements: QGraphicsItem::keyPressEvent(QKeyEvent *event).

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

Reimplements: QGraphicsItem::keyReleaseEvent(QKeyEvent *event).

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

Reimplements: QGraphicsItem::mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event).

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

Reimplements: QGraphicsItem::mouseMoveEvent(QGraphicsSceneMouseEvent *event).

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

Reimplements: QGraphicsItem::mousePressEvent(QGraphicsSceneMouseEvent *event).

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

Reimplements: QGraphicsItem::mouseReleaseEvent(QGraphicsSceneMouseEvent *event).

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

Reimplements: QGraphicsItem::opaqueArea() const.

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

Reimplements: QGraphicsItem::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget).

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

Reimplements: 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.

Эта функция была добавлена в Qt 4.5.

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

Эта функция была добавлена в Qt 4.5.

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

Spec-Zone.ru

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