QGraphicsTextItem Class
QGraphicsTextItem クラスは、整形されたテキストを表示するためにQGraphicsScene に追加できるテキストアイテムを提供します。詳細...
ヘッダー | #include <QGraphicsTextItem> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Widgets) target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
qmake: | QT += widgets |
継承: | QGraphicsObject |
パブリックな型
enum | anonymous { Type } |
プロパティ
- openExternalLinks : bool
- textCursor : QTextCursor
パブリック関数
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 |
再実装パブリック関数
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() を呼び出すことで、フォントを設定できます。
setTextInteractionFlags() を使用してQt::TextEditorInteraction フラグを設定することで、項目を編集可能にすることができます。
アイテムの優先テキスト幅は、setTextWidth() で設定でき、textWidth() で取得できます。
注意: HTML テキストを中央に配置するには、アイテムのテキスト幅を設定する必要があります。そうでない場合は、アイテムのテキストを設定した後でadjustSize() を呼び出します。
注 : QGraphicsTextItem は、デフォルトでhover events を受け入れます。これはsetAcceptHoverEvents() で変更できます。
QGraphicsSimpleTextItem,QGraphicsPathItem,QGraphicsRectItem,QGraphicsEllipseItem,QGraphicsPixmapItem,QGraphicsPolygonItem,QGraphicsLineItem, およびGraphics View Frameworkも参照のこと 。
メンバー型ドキュメント
enum QGraphicsTextItem::anonymous
仮想type() 関数が返す値。
定数 | 値 | 説明 |
---|---|---|
QGraphicsTextItem::Type | 8 | グラフィックテキスト項目 |
プロパティ ドキュメント
openExternalLinks : bool
linkActivated シグナルを発する代わりに、QDesktopServices::openUrl() を使ってQGraphicsTextItem が自動的にリンクを開くかどうかを指定する。
デフォルト値はfalse。
アクセス関数:
bool | openExternalLinks() const |
void | setOpenExternalLinks(bool open) |
textCursor : QTextCursor
このプロパティは、編集可能なテキストアイテムの可視テキストカーソルを表す。
デフォルトでは、アイテムのテキストが設定されていない場合、このプロパティは null テキストカーソルを含み、そうでない場合、アイテムのドキュメントの先頭に配置されたテキストカーソルを含む。
アクセス関数:
QTextCursor | textCursor() const |
void | setTextCursor(const QTextCursor &cursor) |
メンバ関数ドキュメント
[explicit]
QGraphicsTextItem::QGraphicsTextItem(QGraphicsItem *parent = nullptr)
QGraphicsTextItem を構築します。parent はQGraphicsItem のコンストラクタに渡されます。
QGraphicsScene::addItem()も参照してください 。
[explicit]
QGraphicsTextItem::QGraphicsTextItem(const QString &text, QGraphicsItem *parent = nullptr)
text をデフォルトのプレーンテキストとして QGraphicsTextItem を構築します。parent はQGraphicsItem のコンストラクタに渡されます。
QGraphicsScene::addItem()も参照してください 。
[virtual noexcept]
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)。
[signal]
void QGraphicsTextItem::linkActivated(const QString &link)
このシグナルは、Qt::LinksAccessibleByMouse またはQt::LinksAccessibleByKeyboard を有効にするテキスト項目のリンクをユーザーがクリックしたときに発せられる。link はクリックされたリンク。
setTextInteractionFlags()も参照してください 。
[signal]
void QGraphicsTextItem::linkHovered(const QString &link)
このシグナルは、Qt::LinksAccessibleByMouse を有効にするテキスト・アイテムのリンクにユーザーがカーソルを合わせたときに発せられる。link は、カーソルを合わせたリンクである。
setTextInteractionFlags()も参照してください 。
[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 に設定する。アイテムにキーボード入力フォーカスがある場合、この関数はensureVisible() も呼び出し、テキストがすべてのビューポートで表示されるようにします。
toHtml()、hasFocus()、QGraphicsSimpleTextItemも参照 。
void QGraphicsTextItem::setPlainText(const QString &text)
アイテムのテキストをtext に設定します。 アイテムにキーボード入力フォーカスがある場合、この関数はensureVisible() も呼び出して、テキストがすべてのビューポートで表示されるようにします。
toHtml() およびhasFocus()も参照して ください。
void QGraphicsTextItem::setTabChangesFocus(bool b)
b が真の場合、Tab キーでウィジェットのフォーカスが変更されます。そうでない場合、tab キーでドキュメントにタブが挿入されます。
そうでない場合、タブキーはドキュメントにタブを挿入します。テキスト編集では、フォーカスの連鎖を断ち切るため、Tab キーによるタブの入力やインデントの変更を許可すべきではない場合があります。デフォルトは false です。
tabChangesFocus()、ItemIsFocusable 、textInteractionFlags()も参照してください 。
void QGraphicsTextItem::setTextInteractionFlags(Qt::TextInteractionFlags flags)
フラグflags を設定し、テキストアイテムがユーザー入力にどのように反応するかを指定します。
QGraphicsTextItem のデフォルトはQt::NoTextInteraction です。この関数は、ItemIsFocusableQGraphicsItem フラグにも影響し、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
Tab キーによってウィジェットのフォーカスが変更される場合はtrue
を返し、そうでない場合は false を返す。
デフォルトでは、この動作は無効になっており、この関数はfalseを返します。
setTabChangesFocus()も参照してください 。
Qt::TextInteractionFlags QGraphicsTextItem::textInteractionFlags() const
現在のテキスト対話フラグを返します。
setTextInteractionFlags()も参照 。
qreal QGraphicsTextItem::textWidth() const
テキストの幅を返す。
幅はQGraphicsTextItem が内部的に保持しているQTextDocument で計算される。
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.
© 2025 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.