QTextBlock Class
QTextBlock クラスは、QTextDocument のテキスト断片のコンテナを提供します。
Header: | #include <QTextBlock> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Gui) target_link_libraries(mytarget PRIVATE Qt6::Gui) |
qmake: | QT += gui |
- 継承メンバを含む全メンバ一覧
- QTextBlockはリッチテキスト処理APIの一部です。
注意:このクラスの関数はすべてリエントラントです。
パブリック型
パブリック関数
QTextBlock(const QTextBlock &other) | |
QTextBlock::iterator | begin() const |
QTextBlockFormat | blockFormat() const |
int | blockFormatIndex() const |
int | blockNumber() const |
QTextCharFormat | charFormat() const |
int | charFormatIndex() const |
void | clearLayout() |
bool | contains(int position) const |
const QTextDocument * | document() const |
QTextBlock::iterator | end() const |
int | firstLineNumber() const |
bool | isValid() const |
bool | isVisible() const |
QTextLayout * | layout() const |
int | length() const |
int | lineCount() const |
QTextBlock | next() const |
int | position() const |
QTextBlock | previous() const |
int | revision() const |
void | setLineCount(int count) |
void | setRevision(int rev) |
void | setUserData(QTextBlockUserData *data) |
void | setUserState(int state) |
void | setVisible(bool visible) |
QString | text() const |
Qt::LayoutDirection | textDirection() const |
QList<QTextLayout::FormatRange> | textFormats() const |
QTextList * | textList() const |
QTextBlockUserData * | userData() const |
int | userState() const |
bool | operator!=(const QTextBlock &other) const |
bool | operator<(const QTextBlock &other) const |
QTextBlock & | operator=(const QTextBlock &other) |
bool | operator==(const QTextBlock &other) const |
詳細説明
テキストブロックは、QTextDocument のテキストのブロックまたは段落をカプセル化します。 QTextBlock は、QTextDocuments のブロック/段落構造への読み取り専用アクセスを提供します。QTextBlock は、QTextDocuments のブロック/段落構造への読み取り専用アクセスを提供します。これは主に、QTextDocument の視覚的表現のために独自のレイアウトを実装したい場合や、ドキュメントを繰り返し処理して独自のカスタム形式で内容を書き出したい場合に使用します。
テ キ ス ト ブ ロ ッ ク はその親文書に よ っ て作成 さ れます。新 し いテ キ ス ト ブ ロ ッ ク を作成 し た り 、 文書の内容を吟味 し なが ら 内容を変更 し た り する 必要があ る 場合は、 かわ り にQTextCursor が提供す る カー ソ ルベース の イ ン タ フ ェース を利用 し て く だ さ い。
各テキスト・ブロックはdocument() 内の特定のposition() にあります。ブロックの内容は、text ()関数を使用して取得することができます。length ()関数は、文書内でのブロックのサイズを決定します(書式文字を含む)。ブ ロ ッ ク の視覚的特性は、 そのテキス トlayout ()、charFormat ()、blockFormat ()によ っ て決定 さ れます。
next() とprevious() 関数は、文書内の連続する有効なブロックを反復処理することができます。ブロックは順番に返されますが、隣接するブロックは文書構造内の異なる場所から来る可能性があることに注意してください。ブロックの有効性は、isValid ()を呼び出すことで判定できます。
QTextBlock には、ブロックを扱いやすくするための比較演算子が用意されています。operator==() は、2つのブロックが等しいかどうかを比較し、operator!=() は、2つのブロックが等しくないかどうかを比較し、operator<() は、同じ文書内でブロックが他のブロックより前にあるかどうかを判定します。
QTextBlockFormat 、QTextCharFormat 、QTextFragmentも参照 。
メンバ関数 ドキュメント
QTextBlock::QTextBlock(const QTextBlock &other)
other テキストブロックの属性をこのテキストブロックにコピーします。
QTextBlock::iterator QTextBlock::begin() const
テキストブロックの先頭を指すテキストブロックイテレータを返します。
end()も参照してください 。
QTextBlockFormat QTextBlock::blockFormat() const
ブロック固有のプロパティを記述したQTextBlockFormat を返します。
charFormat()も参照して ください。
int QTextBlock::blockFormatIndex() const
テキス ト ブ ロ ッ ク の形式に対す る ブ ロ ッ ク 書式の文書内部 リ ス ト 内への イ ンデ ッ ク ス を返 し ます。
QTextDocument::allFormats()も参照 。
int QTextBlock::blockNumber() const
このブロックの番号を返し、ブロックが無効な場合は -1 を返します。
QTextCursor::blockNumber() も参照 。
QTextCharFormat QTextBlock::charFormat() const
ブロックの文字書式を表すQTextCharFormat を返します。ブロックの文字書式は、空のブロックにテキストを挿入するときに使用されます。
blockFormat() も参照して ください。
int QTextBlock::charFormatIndex() const
テキス ト ブ ロ ッ ク の文字形式に対す る 、 文書内部の文字形式 リ ス ト への イ ンデ ッ ク ス を返 し ます。
QTextDocument::allFormats()も参照 。
void QTextBlock::clearLayout()
ブロックの内容のレイアウトや表示に使用するQTextLayout をクリアします。
layout()も参照 。
bool QTextBlock::contains(int position) const
与えられたposition がテキストブロック内にあればtrue
を返し、なければfalse
を返します。
const QTextDocument *QTextBlock::document() const
こ のテ キ ス ト ブ ロ ッ ク が属 し てい る テ キ ス ト 文書を返 し 、 テ キ ス ト ブ ロ ッ ク が ど の文書に も 属 し ていない と き はnullptr
を返 し ます。
QTextBlock::iterator QTextBlock::end() const
テ キ ス ト ブ ロ ッ ク の末尾を指 し 示す テ キ ス ト ブ ロ ッ ク イ テ レー タ を返 し ます。
begin()、next()、previous()も参照 。
int QTextBlock::firstLineNumber() const
このブロックの最初の行番号、またはブロックが無効な場合は -1 を返します。レイアウトがサポートしていない限り、行番号はブロック番号と同じです。
QTextBlock::blockNumber()も参照 。
bool QTextBlock::isValid() const
このテキストブロックが有効な場合はtrue
を返し、そうでない場合はfalse
を返す。
bool QTextBlock::isVisible() const
ブロックが表示されている場合はtrue
を返し、そうでない場合はfalse
を返します。
setVisible()も参照 。
QTextLayout *QTextBlock::layout() const
ブロックの内容をレイアウトして表示するために使用されるQTextLayout を返します。
返されたQTextLayout オブジェクトは、QAbstractTextDocumentLayout サブクラスの documentChanged 実装からのみ変更できることに注意してください。外部からの変更は未定義の振る舞いを引き起こします。
clearLayout()も参照してください 。
int QTextBlock::length() const
ブロックの長さを文字数で返します。
注意: 返される長さには、改行などのすべてのフォーマット文字が含まれます。
text()、charFormat()、blockFormat() も参照 。
int QTextBlock::lineCount() const
行数を返します。すべての文書レイアウトがこの機能をサポートしているわけではありません。
setLineCount() も参照 。
QTextBlock QTextBlock::next() const
このブロックの後にある文書内のテキストブロック、あるいはこれが最後のブロックの場合は空のテキストブロックを返します。
次のブロックは、このブロックとは別のフレームやテーブルにある可能性があることに注意しましょう。
int QTextBlock::position() const
ドキュメント内のブロックの最初の文字のインデックスを返します。
QTextBlock QTextBlock::previous() const
このブロックの前にある文書内のテキストブロック、またはこれが最初のブロックの場合は空のテキストブロックを返します。
前のブロックは、このブロックとは別のフレームやテーブル内にある可能性があることに注意しましょう。
int QTextBlock::revision() const
ブロックのリビジョンを返します。
setRevision() およびQTextDocument::revision() も参照 。
void QTextBlock::setLineCount(int count)
行数をcount に設定します。
lineCount() も参照 。
void QTextBlock::setRevision(int rev)
ブロック・リビジョンをrev に設定します。
revision() およびQTextDocument::revision() も参照 。
void QTextBlock::setUserData(QTextBlockUserData *data)
与えられたdata オブジェクトをテキスト・ブロックにアタッチします。
QTextBlockUserData は、カスタム設定を保存するために使用できます。すなわち、 与えた オブジ ェ ク ト は、 対応す る テ キ ス ト ブ ロ ッ ク が削除 さ れた場合には削除 さ れます。ユーザーデー タ オブジ ェ ク ト は元に戻 し 履歴に格納 さ れませんので、 テ キ ス ト ブ ロ ッ ク の削除を元に戻 し て も 利用可能にはな り ません。QTextBlockUserData
例えば、IDEでプログラミング・エディタを書いている場合、統合デバッガのためにユーザーがコードに視覚的にブレークポイントを設定できるようにしたいと思うかもしれません。プログラミング・エディタでは、1行のテキストは通常1つのQTextBlock に相当します。QTextBlockUserData インタフェースにより、開発者はQTextBlock ごとにデータを保存することができます。たとえば、ユーザーがソース・コードのどの行にブレークポイントを設定しているかなどを保存できます。もちろん、これは外部に保存することもできますが、QTextDocument の内部に保存することで、たとえばユーザーが関連する行を削除したときに自動的に削除されます。これは、QTextFormat のカスタムプロパティを使用することなく、QTextDocument にカスタム情報を保存する方法です。
userData()も参照のこと 。
void QTextBlock::setUserState(int state)
指定されたstate 整数値をテキストブロックに格納します。これは、たとえばシンタックス・ハイライタでテキストの解析状態を保存するのに便利です。
userState()も参照 。
void QTextBlock::setVisible(bool visible)
ブロックの可視性をvisible に設定します。
isVisible() も参照 。
QString QTextBlock::text() const
ブロックの内容をプレーン・テキストとして返します。
length()、charFormat() およびblockFormat() も参照 。
Qt::LayoutDirection QTextBlock::textDirection() const
解決されたテキストの方向を返します。
ブロックに明示的な方向が設定されていない場合は、ブロックの内容から方向を解決します。Qt::LeftToRight あるいはQt::RightToLeft のいずれかを返します。
QTextFormat::layoutDirection()、QString::isRightToLeft()、Qt::LayoutDirectionも参照 。
QList<QTextLayout::FormatRange> QTextBlock::textFormats() const
ブロックのテキスト書式オプションを、QTextCharFormat の連続した範囲のリストとして返します。範囲の文字書式は、範囲の境界内にテキストを挿入するときに使用されます。
charFormat() およびblockFormat()も参照 。
QTextList *QTextBlock::textList() const
ブロックがリスト項目を表している場合は、その項目が属するリストを返します。そうでない場合はnullptr
を返します。
QTextBlockUserData *QTextBlock::userData() const
setUserData() でQTextBlockUserData オブジェクトが設定されている場合はそのオブジェクトへのポインタを、nullptr
で設定されている場合はそのオブジェクトへのポインタを返す。
setUserData()も参照 。
int QTextBlock::userState() const
setUserState() で設定した整数値または -1 を返します。
setUserState()も参照 。
bool QTextBlock::operator!=(const QTextBlock &other) const
このテキスト・ブロックがother テキスト・ブロックと異なる場合はtrue
を返します。
bool QTextBlock::operator<(const QTextBlock &other) const
こ のテ キ ス ト ブ ロ ッ ク が文書内でother テ キ ス ト ブ ロ ッ ク よ り 前にあ る と き はtrue
を返す。
QTextBlock &QTextBlock::operator=(const QTextBlock &other)
other テキストブロックをこのテキストブロックに割り当てます。
bool QTextBlock::operator==(const QTextBlock &other) const
このテキストブロックがother テキストブロックと同じ場合はtrue
を返します。
本ドキュメントに含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。