Класс QTextBlock
Класс QTextBlock предоставляет контейнер для фрагментов текста в QTextDocument. Подробнее...
| Заголовок: | #include <QTextBlock> |
| qmake: | QT += gui |
Примечание: Все функции в этом классе являются повторно входящими.
Типы
| класс | iterator |
| typedef | Iterator |
Общедоступные функции
| QTextBlock(const QTextBlock &other) | |
| 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 |
| 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 |
| QVector<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 |
Подробное описание
Класс QTextBlock предоставляет контейнер для фрагментов текста в QTextDocument.
Блок текста encapsulates блок или абзац текста в QTextDocument. QTextBlock предоставляет чтение только для структуры блоков/абзацев QTextDocuments. Он в основном используется, если вы хотите реализовать собственные макеты для визуального представления QTextDocument или если вы хотите пройтись по документу и вывести содержимое в собственном пользовательском формате.
Блоки текста создаются родительскими документами. Если вам нужно создать новый блок текста или изменить содержимое документа во время его проверки, используйте интерфейс на основе курсора, предоставляемый QTextCursor.
Каждый блок текста расположен в определенной позиции() в документе. Содержимое блока можно получить, используя функцию text(). Функция length() определяет размер блока в документе (включая символы форматирования). Визуальные свойства блока определяются его макетом layout(), charFormat() и blockFormat().
Функции next() и previous() позволяют итерировать по последовательным допустимым блокам в документе при условии, что документ не изменяется другими средствами во время итерации. Обратите внимание, что, хотя блоки возвращаются последовательно, соседние блоки могут происходить из разных мест в структуре документа. Допустимость блока можно определить, вызвав isValid().
QTextBlock предоставляет операторы сравнения, чтобы облегчить работу с блоками: operator==() сравнивает два блока на равенство, operator!=() сравнивает два блока на неравенство, а operator<() определяет, предшествует ли блок другому в том же документе.
См. также QTextBlockFormat, QTextCharFormat и QTextFragment.
Документация по типу члена
typedef QTextBlock::Iterator
Синоним в стиле Qt для QTextBlock::iterator.
Документация по функции члена
QTextBlock::QTextBlock(const QTextBlock &other)
Копирует атрибуты блока текста other в этот блок текста.
iterator QTextBlock::begin() const
Возвращает итератор блока текста, указывающий на начало блока текста.
См. также end().
QTextBlockFormat QTextBlock::blockFormat() const
Возвращает QTextBlockFormat, который описывает свойства, относящиеся к блоку.
См. также charFormat().
int QTextBlock::blockFormatIndex() const
Возвращает индекс во внутренней списке форматов блоков документа для формата блока текста.
См. также QTextDocument::allFormats().
int QTextBlock::blockNumber() const
Возвращает номер этого блока или -1, если блок недействителен.
Эта функция была введена в Qt 4.4.
См. также QTextCursor::blockNumber().
QTextCharFormat QTextBlock::charFormat() const
Возвращает QTextCharFormat, описывающий формат символов блока. Формат символов блока используется при вставке текста в пустой блок.
См. также blockFormat().
int QTextBlock::charFormatIndex() const
Возвращает индекс в внутреннем списке форматов символов документа для формата символов текстового блока.
См. также QTextDocument::allFormats().
void QTextBlock::clearLayout()
Очищает QTextLayout, который используется для выравнивания и отображения содержимого блока.
Эта функция была введена в Qt 4.4.
См. также layout().
bool QTextBlock::contains(int position) const
Возвращает true если заданное значение position расположено внутри текстового блока; в противном случае возвращает false.
const QTextDocument *QTextBlock::document() const
Возвращает текстовый документ, к которому принадлежит этот текстовый блок, или 0, если текстовый блок не принадлежит ни одному документу.
iterator QTextBlock::end() const
Возвращает итератор текстового блока, указывающий на конец текстового блока.
См. также begin(), next() и previous().
int QTextBlock::firstLineNumber() const
Возвращает номер первой строки этого блока или -1, если блок недействителен. Если макет не поддерживает, номер строки идентичен номеру блока.
Эта функция была введена в Qt 4.5.
См. также QTextBlock::blockNumber().
bool QTextBlock::isValid() const
Возвращает true если этот текстовый блок действителен; в противном случае возвращает false.
bool QTextBlock::isVisible() const
Возвращает true если блок видимый; в противном случае возвращает false.
Эта функция была введена в Qt 4.4.
См. также setVisible().
QTextLayout *QTextBlock::layout() const
Возвращает QTextLayout, который используется для выравнивания и отображения содержимого блока.
Обратите внимание, что возвращаемый объект QTextLayout может быть изменён только из реализации documentChanged подкласса QAbstractTextDocumentLayout. Любые внешние изменения вызывают неопределённое поведение.
См. также clearLayout().
int QTextBlock::length() const
Возвращает длину блока в символах.
Примечание: Возвращаемая длина включает все символы форматирования, например, переводы строк.
См. также text(), charFormat() и blockFormat().
int QTextBlock::lineCount() const
Возвращает количество строк. Не все макеты документов поддерживают эту функцию.
Эта функция была введена в Qt 4.5.
См. также setLineCount().
QTextBlock QTextBlock::next() const
Возвращает текстовый блок в документе после этого блока или пустой текстовый блок, если это последний.
Обратите внимание, что следующий блок может быть в другой рамке или таблице по сравнению с этим блоком.
См. также previous(), begin() и end().
int QTextBlock::position() const
Возвращает индекс первого символа блока в документе.
QTextBlock QTextBlock::previous() const
Возвращает текстовый блок в документе перед этим блоком или пустой текстовый блок, если это первый.
Обратите внимание, что предыдущий блок может быть в другой рамке или таблице по сравнению с этим блоком.
См. также next(), begin() и end().
int QTextBlock::revision() const
Возвращает версию блока.
Эта функция была введена в Qt 4.4.
См. также setRevision() и QTextDocument::revision().
void QTextBlock::setLineCount(int count)
Устанавливает количество строк в count.
Эта функция была введена в Qt 4.5.
См. также lineCount().
void QTextBlock::setRevision(int rev)
Устанавливает версию блока в rev.
Эта функция была введена в Qt 4.4.
См. также revision() и QTextDocument::revision().
void QTextBlock::setUserData(QTextBlockUserData *data)
Присоединяет заданный объект data к текстовому блоку.
QTextBlockUserData может использоваться для хранения пользовательских настроек. Владение передаётся в основной текстовый документ, т.е. предоставленный объект QTextBlockUserData будет удалён, если соответствующий текстовый блок будет удалён. Объект пользовательских данных не хранится в истории отмены, поэтому он не будет доступен после отмены удаления текстового блока.
Например, если вы пишете редактор программного кода в IDE, вы можете позволить пользователю визуально устанавливать точки останова в вашем коде для интегрированного отладчика. В редакторе программного кода строка текста обычно соответствует одному QTextBlock. Интерфейс QTextBlockUserData позволяет разработчику хранить данные для каждого QTextBlock, например, в каких строках исходного кода установлен пользователем точка останова. Конечно, это также может храниться внешне, но храня это внутри QTextDocument, это, например, будет автоматически удалено, когда пользователь удалит соответствующую строку. Это действительно просто способ хранения пользовательской информации в QTextDocument без использования пользовательских свойств в QTextFormat, которые повлияют на стек отмены/повтора.
Эта функция была введена в Qt 4.1.
См. также userData().
void QTextBlock::setUserState(int state)
Хранит указанное целое значение state в текстовом блоке. Это может быть полезно, например, в синтаксическом выделении для хранения состояния разбора текста.
Эта функция была введена в Qt 4.1.
См. также userState().
void QTextBlock::setVisible(bool visible)
Устанавливает видимость блока в visible.
Эта функция была введена в Qt 4.4.
См. также isVisible().
QString QTextBlock::text() const
Возвращает содержимое блока в виде обычного текста.
См. также length(), charFormat() и blockFormat().
Qt::LayoutDirection QTextBlock::textDirection() const
Возвращает разрешённое направление текста.
Если для блока не задано явного направления, он будет определять направление из содержимого блока. Возвращает либо Qt::LeftToRight, либо Qt::RightToLeft.
Эта функция была введена в Qt 4.7.
См. также QTextFormat::layoutDirection(), QString::isRightToLeft() и Qt::LayoutDirection.
QVector<QTextLayout::FormatRange> QTextBlock::textFormats() const
Возвращает опции форматирования текста блока в виде списка непрерывных диапазонов QTextCharFormat. Формат символов диапазона используется при вставке текста в пределах границ диапазона.
Эта функция была введена в Qt 5.3.
См. также charFormat() и blockFormat().
QTextList *QTextBlock::textList() const
Если блок представляет элемент списка, возвращает список, к которому принадлежит элемент; в противном случае возвращает 0.
QTextBlockUserData *QTextBlock::userData() const
Возвращает указатель на объект QTextBlockUserData, если он был ранее установлен с помощью setUserData(), или нулевой указатель.
Эта функция была введена в Qt 4.1.
См. также setUserData().
END_OF_DOCUMENT_MARKERint QTextBlock::userState() const
Возвращает целое значение, ранее заданное с помощью setUserState() или -1.
Эта функция была добавлена в Qt 4.1.
См. также setUserState().
bool QTextBlock::operator!=(const QTextBlock &other) const
Возвращает true если этот блок текста отличается от блока текста other.
bool QTextBlock::operator<(const QTextBlock &other) const
Возвращает true если этот блок текста предшествует блоку текста other в документе.
QTextBlock &QTextBlock::operator=(const QTextBlock &other)
Присваивает блок текста other этому блоку текста.
bool QTextBlock::operator==(const QTextBlock &other) const
Возвращает true если этот блок текста такой же, как блок текста other.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.9/qtextblock.html