Spec-Zone.ru › Qt

Класс QTextBlock

Класс QTextBlock предоставляет контейнер для фрагментов текста в QTextDocument. Подробнее...

Заголовок: #include <QTextBlock>
CMake: find_package(Qt6 COMPONENTS Gui REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmake: QT += gui
  • Список всех членов, включая унаследованные

Примечание: Все функции в этом классе являются реентерабельными.

Типы публичного доступа

класс итератор
Итератор

Функции публичного доступа

QTextBlock(const QTextBlock &other)
QTextBlock & operator=(const QTextBlock &other)
QTextBlock::iterator begin() const
QTextBlockFormat blockFormat() const
int blockFormatIndex() const
int номер блока() const
QTextCharFormat charFormat() const
int индексCharFormat() const
void очиститьМакет()
bool содержит(int position) const
const QTextDocument * документ() const
QTextBlock::iterator end() const
int первыйНомерСтроки() const
bool isValid() const
bool видимый() const
QTextLayout * макет() const
int длина() const
int количествоСтрок() const
QTextBlock следующий() const
int позиция() const
QTextBlock предыдущий() const
int ревизия() const
void установитьКоличествоСтрок(int count)
void установитьРевизию(int rev)
void установитьПользовательскиеДанные(QTextBlockUserData *data)
void установитьСостояниеПользователя(int state)
void установитьВидимость(bool visible)
QString текст() const
Qt::LayoutDirection направлениеТекста() const
QList<QTextLayout::FormatRange> форматыТекста() const
QTextList * списокТекста() const
QTextBlockUserData * пользовательскиеДанные() const
int состояниеПользователя() const
bool operator!=(const QTextBlock &other) const
bool operator<(const QTextBlock &other) const
bool operator==(const QTextBlock &other) const

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

Блок текста инкапсулирует блок или абзац текста в QTextDocument. QTextBlock предоставляет только чтение доступа к структуре блоков/абзацев QTextDocuments. Он в основном используется, если вы хотите реализовать собственные макеты для визуального представления QTextDocument или если вы хотите проитерироваться по документу и вывести содержимое в собственном пользовательском формате.

Блоки текста создаются родительскими документами. Если вам нужно создать новый блок текста или изменить содержимое документа во время его просмотра, используйте интерфейс на основе курсора, предоставляемый QTextCursor.

Каждый блок текста находится в определенной позиции() в документе(). Содержимое блока можно получить, используя функцию текст(). Функция длина() определяет размер блока в документе (включая символы форматирования). Визуальные свойства блока определяются его текстовым макетом(), его charFormat() и его blockFormat().

Функции следующий() и предыдущий() позволяют итерироваться по последовательным допустимым блокам в документе при условии, что документ не изменяется другими способами во время процесса итерации. Обратите внимание, что, хотя блоки возвращаются последовательно, смежные блоки могут поступать из разных частей структуры документа. Допустимость блока можно определить, вызвав isValid().

QTextBlock предоставляет операторы сравнения, чтобы упростить работу с блоками: operator==() сравнивает два блока на равенство, operator!=() сравнивает два блока на неравенство, а operator<() определяет, предшествует ли один блок другому в том же документе.

См. также QTextBlockFormat, QTextCharFormat и QTextFragment.

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

QTextBlock::Итератор

Синоним Qt-стиля для QTextBlock::итератор.

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

QTextBlock::QTextBlock(const QTextBlock &other)

Копирует атрибуты other блока текста в этот блок текста.

QTextBlock &QTextBlock::operator=(const QTextBlock &other)

Присваивает other блок текста этому блоку текста.

QTextBlock::итератор 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

Возвращает true если заданное position расположено внутри текстового блока; в противном случае возвращает 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 может быть изменён только в реализации метода documentChanged подкласса QAbstractTextDocumentLayout. Любые изменения, применённые извне, приводят к неопределённому поведению.

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

int QTextBlock::length() const

Возвращает длину блока в символах.

Примечание: Возвращаемая длина включает все символы форматирования, например, переводы строк.

См. также text(), charFormat() и blockFormat().

int QTextBlock::lineCount() const

Возвращает количество строк. Не все макеты документов поддерживают эту функцию.

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

QTextBlock QTextBlock::next() const

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

Обратите внимание, что следующий блок может находиться в другой рамке или таблице по сравнению с этим блоком.

См. также previous(), begin() и end().

int QTextBlock::position() const

Возвращает индекс первого символа блока в документе.

QTextBlock QTextBlock::previous() const

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

Обратите внимание, что предыдущий блок может находиться в другой рамке или таблице по сравнению с этим блоком.

См. также next(), begin() и end().

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, вы можете позволить пользователю визуально устанавливать точки останова в вашем коде для интегрированного отладчика. В редакторе кода строка текста обычно соответствует одному QTextBlock. Интерфейс QTextBlockUserData позволяет разработчику хранить данные для каждого QTextBlock, например, в каких строках исходного кода пользователь установил точку останова. Конечно, это также можно хранить внешне, но хранение внутри QTextDocument позволяет автоматически удалять его, например, при удалении соответствующей строки. Это просто способ хранить пользовательские данные в QTextDocument без использования пользовательских свойств в QTextFormat, которые повлияют на стек отмены/повторной обработки.

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

[since 5.3] QList<QTextLayout::FormatRange> QTextBlock::textFormats() const

Возвращает параметры формата текста блока в виде списка непрерывных диапазонов QTextCharFormat. Формат символов диапазона используется при вставке текста в пределах границ диапазона.

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

См. также charFormat() и blockFormat().

QTextList *QTextBlock::textList() const

Если блок представляет собой элемент списка, возвращает список, к которому принадлежит элемент; в противном случае возвращает nullptr.

QTextBlockUserData *QTextBlock::userData() const

Возвращает указатель на объект QTextBlockUserData, если он был установлен с помощью setUserData(), или nullptr.

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

int QTextBlock::userState() const

Возвращает целое значение, ранее установленное с помощью setUserState(), или -1.

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

bool QTextBlock::operator!=(const QTextBlock &other) const

Возвращает true если этот блок текста отличается от блока текста other.

bool QTextBlock::operator<(const QTextBlock &other) const

Возвращает true если этот блок текста встречается перед блоком текста 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-6.2/qtextblock.html

Spec-Zone.ru

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