Spec-Zone.ru › Qt 5.11

Класс QTextEdit

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

Заголовок: #include <QTextEdit>
qmake: QT += widgets
Наследует: QAbstractScrollArea
Наследует от:

QTextBrowser

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

Открытые типы

класс ExtraSelection
флаги AutoFormatting
перечисление AutoFormattingFlag { AutoNone, AutoBulletList, AutoAll }
перечисление LineWrapMode { NoWrap, WidgetWidth, FixedPixelWidth, FixedColumnWidth }

Свойства

  • acceptRichText : bool
  • autoFormatting : AutoFormatting
  • cursorWidth : int
  • document : QTextDocument*
  • documentTitle : QString
  • html : QString
  • lineWrapColumnOrWidth : int
  • lineWrapMode : LineWrapMode
  • overwriteMode : bool
  • placeholderText : QString
  • plainText : QString
  • readOnly : bool
  • tabChangesFocus : bool
  • tabStopDistance : qreal
  • textInteractionFlags : Qt::TextInteractionFlags
  • undoRedoEnabled : bool
  • wordWrapMode : QTextOption::WrapMode
  • 3 свойства унаследованы от QAbstractScrollArea
  • 6 свойств унаследованы от QFrame
  • 59 свойств унаследованы от QWidget
  • 1 свойство унаследовано от QObject

Открытые функции

QTextEdit(QWidget *parent = nullptr)
QTextEdit(const QString &text, QWidget *parent = nullptr)
virtual ~QTextEdit()
bool принятьФорматированныйТекст() const
Qt::Alignment выравнивание() const
QString якорьВ(const QPoint &pos) const
QTextEdit::AutoFormatting автоматическоеФорматирование() const
bool можноВставить() const
QMenu * создатьСтандартноеКонтекстноеМеню()
QMenu * создатьСтандартноеКонтекстноеМеню(const QPoint &position)
QTextCharFormat текущийФорматСимвола() const
QFont текущийШрифт() const
QTextCursor курсорДляПозиции(const QPoint &pos) const
QRect прямоугольникКурсора(const QTextCursor &cursor) const
QRect прямоугольникКурсора() const
int ширинаКурсора() const
QTextDocument * документ() const
QString заголовокДокумента() const
void гарантироватьВидимостьКурсора()
QList<QTextEdit::ExtraSelection> дополнительныеВыделения() const
bool найти(const QString &exp, QTextDocument::FindFlags options = QTextDocument::FindFlags())
bool найти(const QRegExp &exp, QTextDocument::FindFlags options = QTextDocument::FindFlags())
QString названиеШрифта() const
bool курсивШрифта() const
qreal размерШрифта() const
bool подчеркнутыйШрифт() const
int жирностьШрифта() const
bool толькоЧтение() const
bool вклОтклОперацииОтменыВозврата() const
int колонкаИлиШиринаПереносаСтроки() const
QTextEdit::LineWrapMode режимПереносаСтроки() const
virtual QVariant загрузитьРесурс(int type, const QUrl &name)
void слитьТекущийФорматСимвола(const QTextCharFormat &modifier)
void переместитьКурсор(QTextCursor::MoveOperation operation, QTextCursor::MoveMode mode = QTextCursor::MoveAnchor)
bool режимНаписанияСверху() const
QString текстЗаполнителя() const
void распечатать(QPagedPaintDevice *printer) const
void установитьПринятьФорматированныйТекст(bool accept)
void установитьАвтоматическоеФорматирование(QTextEdit::AutoFormatting features)
void установитьТекущийФорматСимвола(const QTextCharFormat &format)
void установитьШиринуКурсора(int width)
void установитьДокумент(QTextDocument *document)
void установитьЗаголовокДокумента(const QString &title)
void установитьДополнительныеВыделения(const QList<QTextEdit::ExtraSelection> &selections)
void установитьКолонкаИлиШиринаПереносаСтроки(int w)
void установитьРежимПереносаСтроки(QTextEdit::LineWrapMode mode)
void установитьРежимНаписанияСверху(bool overwrite)
void установитьТекстЗаполнителя(const QString &placeholderText)
void установитьТолькоЧтение(bool ro)
void установитьПереносВводаИзменяетФокус(bool b)
void установитьРасстояниеДоОтступаТабуляции(qreal distance)
void установитьКурсорВвода(const QTextCursor &cursor)
void установитьФлагиВзаимодействияСТекстом(Qt::TextInteractionFlags flags)
void установитьВклОтклОперацииОтменыВозврата(bool enable)
void установитьРежимОбтекания(QTextOption::WrapMode policy)
bool переносВводаИзменяетФокус() const
qreal расстояниеДоОтступаТабуляции() const
QColor цветФонаТекста() const
QColor цветТекста() const
QTextCursor textCursor() const
Qt::TextInteractionFlags textInteractionFlags() const
QString toHtml() const
QString toPlainText() const
QTextOption::WrapMode wordWrapMode() const

Реализованные общедоступные функции

virtual QVariant inputMethodQuery(Qt::InputMethodQuery property) const override
  • 20 общедоступных функций, унаследованных от QAbstractScrollArea
  • 14 общедоступных функций, унаследованных от QFrame
  • 214 общедоступных функций, унаследованных от QWidget
  • 34 общедоступных функций, унаследованных от QObject
  • 14 общедоступных функций, унаследованных от QPaintDevice

Общедоступные слоты

void append(const QString &text)
void clear()
void copy()
void cut()
void insertHtml(const QString &text)
void insertPlainText(const QString &text)
void paste()
void redo()
void scrollToAnchor(const QString &name)
void selectAll()
void setAlignment(Qt::Alignment a)
void setCurrentFont(const QFont &f)
void setFontFamily(const QString &fontFamily)
void setFontItalic(bool italic)
void setFontPointSize(qreal s)
void setFontUnderline(bool underline)
void setFontWeight(int weight)
void setHtml(const QString &text)
void setPlainText(const QString &text)
void setText(const QString &text)
void setTextBackgroundColor(const QColor &c)
void setTextColor(const QColor &c)
void undo()
void zoomIn(int range = 1)
void zoomOut(int range = 1)
  • 19 общедоступных слотов, унаследованных от QWidget
  • 1 общедоступный слот, унаследованный от QObject

Сигналы

void copyAvailable(bool yes)
void currentCharFormatChanged(const QTextCharFormat &f)
void cursorPositionChanged()
void redoAvailable(bool available)
void selectionChanged()
void textChanged()
void undoAvailable(bool available)
  • 3 сигнала, унаследованных от QWidget
  • 2 сигнала, унаследованных от QObject

Защищенные функции

virtual bool canInsertFromMimeData(const QMimeData *source) const
virtual QMimeData * createMimeDataFromSelection() const
virtual void insertFromMimeData(const QMimeData *source)

Реализованные защищенные функции

virtual void changeEvent(QEvent *e) override
virtual void contextMenuEvent(QContextMenuEvent *event) override
virtual void dragEnterEvent(QDragEnterEvent *e) override
virtual void dragLeaveEvent(QDragLeaveEvent *e) override
virtual void dragMoveEvent(QDragMoveEvent *e) override
virtual void dropEvent(QDropEvent *e) override
virtual void focusInEvent(QFocusEvent *e) override
virtual bool focusNextPrevChild(bool next) override
virtual void focusOutEvent(QFocusEvent *e) override
virtual void inputMethodEvent(QInputMethodEvent *e) override
virtual void keyPressEvent(QKeyEvent *e) override
virtual void keyReleaseEvent(QKeyEvent *e) override
virtual void mouseDoubleClickEvent(QMouseEvent *e) override
virtual void mouseMoveEvent(QMouseEvent *e) override
virtual void mousePressEvent(QMouseEvent *e) override
virtual void mouseReleaseEvent(QMouseEvent *e) override
virtual void paintEvent(QPaintEvent *event) override
virtual void resizeEvent(QResizeEvent *e) override
virtual void scrollContentsBy(int dx, int dy) override
virtual void showEvent(QShowEvent *) override
virtual void wheelEvent(QWheelEvent *e) override
  • 20 защищенные функции, унаследованные от QAbstractScrollArea
  • 4 защищенные функции, унаследованные от QFrame
  • 35 защищенные функции, унаследованные от QWidget
  • 9 защищенные функции, унаследованные от QObject
  • 1 защищенная функция, унаследованная от QPaintDevice

Дополнительные унаследованные члены

  • 1 общедоступная переменная, унаследованная от QObject
  • 5 статические общедоступные члены, унаследованные от QWidget
  • 10 статических общедоступных членов, унаследованных от QObject
  • 1 защищённый слот, унаследованный от QWidget
  • 2 защищённые переменные, унаследованные от QObject
  • 1 защищённый тип, унаследованный от QPaintDevice

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

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

Введение и понятия

QTextEdit — это расширенный виджет WYSIWYG, поддерживающий форматирование форматированного текста с помощью тегов в стиле HTML. Он оптимизирован для работы с большими документами и быстрой реакции на ввод пользователя.

QTextEdit работает с абзацами и символами. Абзац — это отформатированная строка, которая переносится по словам, чтобы уместиться в ширину виджета. По умолчанию при чтении простого текста одна новая строка обозначает абзац. Документ состоит из нуля или более абзацев. Слова в абзаце выравниваются в соответствии с выравниванием абзаца. Абзацы разделены жёсткими переносами строк. Каждый символ внутри абзаца имеет свои атрибуты, например, шрифт и цвет.

QTextEdit может отображать изображения, списки и таблицы. Если текст слишком большой, чтобы отобразиться в области просмотра текстового поля, появятся полосы прокрутки. Текстовое поле может загружать файлы как простого, так и форматированного текста. Форматированный текст описывается с помощью подмножества разметки HTML 4, см. страницу Поддерживаемое подмножество HTML для получения дополнительной информации.

Если вам нужно просто отобразить небольшой фрагмент форматированного текста, используйте QLabel.

Поддержка форматированного текста в Qt разработана для обеспечения быстрого, портативного и эффективного способа добавления разумных справочных материалов в приложения и предоставления основы для редакторов форматированного текста. Если поддержка HTML недостаточна для ваших нужд, рассмотрите использование Qt WebKit, который предоставляет полнофункциональный виджет веб-браузера.

Форма курсора мыши в QTextEdit по умолчанию — Qt::IBeamCursor. Она может быть изменена через свойство курсора viewport().

Использование QTextEdit в качестве виджета отображения

QTextEdit может отображать большое подмножество HTML, включая таблицы и изображения.

Текст устанавливается или заменяется с помощью setHtml(), который удаляет весь существующий текст и заменяет его текстом, переданным в вызов setHtml(). Если вы вызываете setHtml() с устаревшей разметкой HTML, а затем вызываете toHtml(), возвращаемый текст может иметь другую разметку, но отобразится одинаково. Весь текст можно удалить с помощью clear().

Сам текст можно вставить, используя класс QTextCursor, или используя удобные функции insertHtml(), insertPlainText(), append() или paste(). QTextCursor также может вставлять сложные объекты, такие как таблицы или списки, в документ, а также обрабатывает создание выделений и применение изменений к выделенному тексту.

По умолчанию текстовое поле переносит слова по пробелам, чтобы уместиться в пределах виджета текстового поля. Функция setLineWrapMode() используется для указания требуемого вида переноса строк или NoWrap, если перенос строк не требуется. Вызовите setLineWrapMode() для установки фиксированной ширины в пикселях FixedPixelWidth или ширины в символах (например, 80 символов) FixedColumnWidth с указанием пикселей или символов с помощью setLineWrapColumnOrWidth(). Если используется перенос слов по ширине виджета WidgetWidth, можно указать, следует ли разбивать по пробелам или в любом месте с помощью setWordWrapMode().

Функция find() может использоваться для поиска и выделения заданной строки в тексте.

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

Клавишные сочетания для только чтения

Когда QTextEdit используется в режиме только чтения, клавишные сочетания ограничиваются навигацией, а текст можно выделять только с помощью мыши:

Нажатие клавиш Действие
Вверх Перемещает на одну строку вверх.
Вниз Перемещает на одну строку вниз.
Влево Перемещает на один символ влево.
Вправо Перемещает на один символ вправо.
PageUp Перемещает на одну страницу вверх (в области просмотра).
PageDown Перемещает на одну страницу вниз (в области просмотра).
Home Перемещает в начало текста.
End Перемещает в конец текста.
Alt+Колесо Прокручивает страницу по горизонтали (Колесо — это колесо мыши).
Ctrl+Колесо Изменяет масштаб текста.
Ctrl+A Выделяет весь текст.

Текстовое поле может предоставлять некоторую метаинформацию. Например, функция documentTitle() вернёт текст изнутри HTML <title> тегов.

Примечание: Масштабирование HTML-документов работает только в том случае, если размер шрифта не установлен на фиксированный размер.

Использование QTextEdit в качестве редактора

Вся информация об использовании QTextEdit в качестве виджета отображения также применима и здесь.

Атрибуты текущего формата символа устанавливаются с помощью setFontItalic(), setFontWeight(), setFontUnderline(), setFontFamily(), setFontPointSize(), setTextColor() и setCurrentFont(). Выравнивание текущего абзаца устанавливается с помощью setAlignment().

Выбор текста обрабатывается классом QTextCursor, который предоставляет функциональность для создания выделений, получения содержимого текста или удаления выделений. Вы можете получить объект, соответствующий видимому курсору пользователя, используя метод textCursor(). Если вы хотите установить выделение в QTextEdit, просто создайте его на объекте QTextCursor, а затем сделайте этот курсор видимым, используя setTextCursor(). Выделение можно скопировать в буфер обмена с помощью copy() или вырезать в буфер обмена с помощью cut(). Весь текст можно выделить, используя selectAll().

Когда курсор перемещается и изменяются базовые атрибуты форматирования, сигнал currentCharFormatChanged() генерируется, чтобы отразить новые атрибуты в новом положении курсора.

Сигнал textChanged() генерируется всякий раз, когда текст изменяется (в результате setText() или непосредственно в редакторе).

QTextEdit содержит объект QTextDocument, который можно получить, используя метод document(). Вы также можете установить свой собственный объект документа, используя setDocument().

QTextDocument предоставляет функцию isModified(), которая возвращает true, если текст был изменён с момента его загрузки или с момента последнего вызова setModified с аргументом false. Кроме того, он предоставляет методы для отмены и повтора.

Перетаскивание

QTextEdit также поддерживает пользовательское поведение перетаскивания. По умолчанию QTextEdit будет вставлять обычный текст, HTML и форматированный текст, когда пользователь перетаскивает данные этих типов MIME на документ. Переопределите canInsertFromMimeData() и insertFromMimeData(), чтобы добавить поддержку дополнительных типов MIME.

Например, чтобы позволить пользователю перетаскивать изображение на QTextEdit, вы можете реализовать эти функции следующим образом:

bool TextEdit::canInsertFromMimeData( const QMimeData *source ) const
{
    if (source->hasImage())
        return true;
    else
        return QTextEdit::canInsertFromMimeData(source);
}

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

void TextEdit::insertFromMimeData( const QMimeData *source )
{
    if (source->hasImage())
    {
        QImage image = qvariant_cast<QImage>(source->imageData());
        QTextCursor cursor = this->textCursor();
        QTextDocument *document = this->document();
        document->addResource(QTextDocument::ImageResource, QUrl("image"), image);
        cursor.insertImage("image");
    }
}

Мы распаковываем изображение из QVariant, содержащегося в источнике MIME, и вставляем его в документ в качестве ресурса.

Клавишные сочетания для редактирования

Список реализованных клавишных сочетаний для редактирования:

Нажатия клавиш Действие
Backspace Удаляет символ слева от курсора.
Delete Удаляет символ справа от курсора.
Ctrl+C Копирует выделенный текст в буфер обмена.
Ctrl+Insert Копирует выделенный текст в буфер обмена.
Ctrl+K Удаляет до конца строки.
Ctrl+V Вставляет текст из буфера обмена в редактор текста.
Shift+Insert Вставляет текст из буфера обмена в редактор текста.
Ctrl+X Удаляет выделенный текст и копирует его в буфер обмена.
Shift+Delete Удаляет выделенный текст и копирует его в буфер обмена.
Ctrl+Z Отменяет последнюю операцию.
Ctrl+Y Повторяет последнюю операцию.
влево Перемещает курсор на один символ влево.
Ctrl+влево Перемещает курсор на одно слово влево.
вправо Перемещает курсор на один символ вправо.
Ctrl+вправо Перемещает курсор на одно слово вправо.
вверх Перемещает курсор на одну строку вверх.
вниз Перемещает курсор на одну строку вниз.
PageUp Перемещает курсор на одну страницу вверх.
PageDown Перемещает курсор на одну страницу вниз.
Home Перемещает курсор в начало строки.
Ctrl+Home Перемещает курсор в начало текста.
End Перемещает курсор в конец строки.
Ctrl+End Перемещает курсор в конец текста.
Alt+Колесо Прокручивает страницу по горизонтали (Колесо — колесо мыши).

Чтобы выделить (отметить) текст, удерживайте нажатой клавишу Shift, а затем нажмите одну из клавиш перемещения, например, Shift+вправо выделит символ справа, а Shift+Ctrl+вправо — слово справа и так далее.

См. также QTextDocument, QTextCursor, Пример приложения, Пример выделения синтаксиса и Обработка форматированного текста.

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

перечисление QTextEdit::AutoFormattingFlagфлаги QTextEdit::AutoFormatting

Постоянная Значение Описание
QTextEdit::AutoNone 0 Не выполнять автоматическое форматирование.
QTextEdit::AutoBulletList 0x00000001 Автоматически создавать списки с маркерами (например, когда пользователь вводит звездочку ('*') в самый левый столбец или нажимает Enter в существующей пункте списка).
QTextEdit::AutoAll 0xffffffff Применять все автоматическое форматирование. В настоящее время поддерживаются только автоматические списки с маркерами.

Тип AutoFormatting — это typedef для QFlags<AutoFormattingFlag>. Он хранит комбинацию значений AutoFormattingFlag по оператору ИЛИ.

перечисление QTextEdit::LineWrapMode

Постоянная Значение
QTextEdit::NoWrap 0
QTextEdit::WidgetWidth 1
QTextEdit::FixedPixelWidth 2
QTextEdit::FixedColumnWidth 3

Документация свойств

acceptRichText : bool

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

Когда это свойство установлено в значение false, поле редактирования текста будет принимать только простой текст от пользователя. Например, через буфер обмена или перетаскивание.

По умолчанию это свойство равно true.

Это свойство было добавлено в Qt 4.1.

Функции доступа:

bool acceptRichText() const
void setAcceptRichText(bool accept)

autoFormatting : AutoFormatting

Это свойство содержит набор включённых функций автоматического форматирования.

Значение может быть любой комбинацией значений в перечислении AutoFormattingFlag. По умолчанию — AutoNone. Выберите AutoAll, чтобы включить все функции автоматического форматирования.

В настоящее время единственной функцией автоматического форматирования является AutoBulletList; в будущих версиях Qt могут быть добавлены другие.

Функции доступа:

QTextEdit::AutoFormatting autoFormatting() const
void setAutoFormatting(QTextEdit::AutoFormatting features)

cursorWidth : int

Это свойство задаёт ширину курсора в пикселях. Значение по умолчанию — 1.

Это свойство было добавлено в Qt 4.2.

Функции доступа:

int cursorWidth() const
void setCursorWidth(int width)

document : QTextDocument*

Это свойство содержит базовый документ текстового редактора.

Примечание: Редактор не получает владения документом, если только он не является родительским объектом документа. Родительский объект предоставленного документа остаётся владельцем объекта. Если ранее назначенный документ является дочерним элементом редактора, он будет удалён.

Функции доступа:

QTextDocument * document() const
void setDocument(QTextDocument *document)

documentTitle : QString

Это свойство содержит заголовок документа, полученный из текста.

По умолчанию для вновь созданного пустого документа это свойство содержит пустую строку.

Функции доступа:

QString documentTitle() const
void setDocumentTitle(const QString &title)

html : QString

Это свойство предоставляет HTML-интерфейс к тексту текстового поля редактирования.

toHtml() возвращает текст текстового поля редактирования в формате HTML.

setHtml() изменяет текст текстового поля редактирования. Предыдущий текст удаляется, и история отмены/повторного выполнения очищается. Входящий текст интерпретируется как форматированный текст в формате HTML.

Примечание: Ответственность за правильное декодирование текста лежит на вызывающей стороне, когда создаётся QString, содержащий HTML, и передаётся в setHtml().

По умолчанию для вновь созданного пустого документа это свойство содержит текст, описывающий HTML-документ версии 4.0 без текста тела.

Функции доступа:

QString toHtml() const
void setHtml(const QString &text)

Сигнал уведомления:

void textChanged()

См. также Поддержка HTML-подмножества и plainText.

lineWrapColumnOrWidth : int

Это свойство содержит позицию (в пикселях или колонках в зависимости от режима обёртки), где будет осуществляться обёртка текста.

Если режим обёртки — FixedPixelWidth, значение — количество пикселей от левого края текстового поля редактирования, где должен происходить перенос текста. Если режим обёртки — FixedColumnWidth, значение — номер колонки (в колонках символов) от левого края текстового поля редактирования, где должен происходить перенос текста.

По умолчанию это свойство содержит значение 0.

Функции доступа:

int lineWrapColumnOrWidth() const
void setLineWrapColumnOrWidth(int w)

См. также lineWrapMode.

lineWrapMode : LineWrapMode

Это свойство содержит режим обёртки строк.

Режим по умолчанию — WidgetWidth, который вызывает обёртку слов по правому краю текстового поля редактирования. Обёртка происходит по пробелам, сохраняя целые слова. Если вам нужна обёртка внутри слов, используйте setWordWrapMode(). Если вы устанавливаете режим обёртки FixedPixelWidth или FixedColumnWidth, вы также должны вызвать setLineWrapColumnOrWidth() со значением желаемой ширины.

Функции доступа:

QTextEdit::LineWrapMode lineWrapMode() const
void setLineWrapMode(QTextEdit::LineWrapMode mode)

См. также lineWrapColumnOrWidth.

overwriteMode : bool

Это свойство указывает, будут ли вводимые пользователем символы перезаписывать существующий текст.

Как и во многих текстовых редакторах, виджет текстового редактора можно настроить на вставку или перезапись существующего текста новым вводимым текстом.

Если это свойство true, существующий текст перезаписывается символ за символом новым; в противном случае текст вставляется в позицию курсора, смещая существующий.

По умолчанию это свойство false (новый текст не перезаписывает существующий).

Это свойство было добавлено в Qt 4.1.

Функции доступа:

bool overwriteMode() const
void setOverwriteMode(bool overwrite)

placeholderText : QString

Это свойство содержит текст-заполнитель редактора.

Установив это свойство, редактор будет отображать текст-заполнитель серого цвета, пока документ document() пуст.

По умолчанию это свойство содержит пустую строку.

Это свойство было добавлено в Qt 5.2.

Функции доступа:

QString placeholderText() const
void setPlaceholderText(const QString &placeholderText)

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

plainText : QString

Это свойство получает и устанавливает содержимое текстового редактора в виде простого текста. Предыдущее содержимое удаляется, и история отмены/повторного выполнения сбрасывается при установке свойства.

Если у текстового поля редактирования другой тип содержимого, он не будет заменён простым текстом при вызове toPlainText(). Единственное исключение — неразрывный пробел, nbsp;, который будет преобразован в стандартный пробел.

По умолчанию для редактора без содержимого это свойство содержит пустую строку.

Это свойство было добавлено в Qt 4.3.

Функции доступа:

QString toPlainText() const
void setPlainText(const QString &text)

См. также html.

readOnly : bool

Это свойство указывает, является ли текстовый редактор только для чтения.

В редакторе только для чтения пользователь может только перемещаться по тексту и выделять текст; изменение текста невозможно.

По умолчанию значение этого свойства равно false.

Функции доступа:

bool isReadOnly() const
void setReadOnly(bool ro)

tabChangesFocus : bool

Это свойство указывает, меняет ли нажатие клавиши Tab фокус или принимается как входной символ.

В некоторых случаях текстовые редакторы не должны позволять пользователю вводить табуляторы или изменять отступы с помощью клавиши Tab, так как это нарушает цепочку фокуса. По умолчанию значение равно false.

Функции доступа:

bool tabChangesFocus() const
void setTabChangesFocus(bool b)

tabStopDistance : qreal

Это свойство содержит расстояние до отступа табуляции в пикселях.

По умолчанию это свойство содержит значение 80 пикселей.

Это свойство было добавлено в Qt 5.10.

Функции доступа:

qreal tabStopDistance() const
void setTabStopDistance(qreal distance)

textInteractionFlags : Qt::TextInteractionFlags

Указывает, как виджет должен взаимодействовать с пользовательским вводом.

Значение по умолчанию зависит от того, является ли QTextEdit только для чтения или редактируемым, а также является ли он QTextBrowser или нет.

Это свойство было добавлено в Qt 4.2.

Функции доступа:

Qt::TextInteractionFlags textInteractionFlags() const
void setTextInteractionFlags(Qt::TextInteractionFlags flags)

undoRedoEnabled : bool

Это свойство указывает, включены ли функции отмены и повтора.

Пользователи смогут отменить или повторить действия только если это свойство имеет значение true и если есть действие, которое можно отменить (или повторить).

Функции доступа:

bool isUndoRedoEnabled() const
void setUndoRedoEnabled(bool enable)

wordWrapMode : QTextOption::WrapMode

Это свойство задаёт режим обрезки текста по словам в QTextEdit.

По умолчанию это свойство установлено в QTextOption::WrapAtWordBoundaryOrAnywhere.

Функции доступа:

QTextOption::WrapMode wordWrapMode() const
void setWordWrapMode(QTextOption::WrapMode policy)

См. также QTextOption::WrapMode.

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

QTextEdit::QTextEdit(QWidget *parent = nullptr)

Создаёт пустой QTextEdit с родителем parent.

QTextEdit::QTextEdit(const QString &text, QWidget *parent = nullptr)

Создаёт QTextEdit с родителем parent. Редактор текста будет отображать текст text. Текст интерпретируется как HTML.

[virtual] QTextEdit::~QTextEdit()

Деструктор.

Qt::Alignment QTextEdit::alignment() const

Возвращает выравнивание текущего абзаца.

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

QString QTextEdit::anchorAt(const QPoint &pos) const

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

[slot] void QTextEdit::append(const QString &text)

Добавляет новый абзац с текстом text в конец текстового редактора.

Примечание: Новый добавленный абзац будет иметь тот же формат символов и абзаца, что и текущий абзац, определяемый позицией курсора.

См. также currentCharFormat() и QTextCursor::blockFormat().

[virtual protected] bool QTextEdit::canInsertFromMimeData(const QMimeData *source) const

Эта функция возвращает true , если содержимое объекта MIME-данных, указанного source, может быть декодировано и вставлено в документ. Она вызывается, например, во время операции перетаскивания, когда курсор мыши входит в этот виджет, и необходимо определить, можно ли принять операцию перетаскивания и опускания.

Переопределите эту функцию, чтобы включить поддержку перетаскивания и опускания для дополнительных типов MIME.

bool QTextEdit::canPaste() const

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

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

[override virtual protected] void QTextEdit::changeEvent(QEvent *e)

Переопределено из QFrame::changeEvent().

[slot] void QTextEdit::clear()

Удаляет весь текст в текстовом редакторе.

Обратите внимание, что история отмены/повтора очищается этой функцией.

См. также cut(), setPlainText(), и setHtml().

[override virtual protected] void QTextEdit::contextMenuEvent(QContextMenuEvent *event)

Переопределено из QAbstractScrollArea::contextMenuEvent().

Отображает стандартное контекстное меню, созданное с помощью createStandardContextMenu().

Если вы не хотите, чтобы текстовый редактор имел контекстное меню, вы можете установить его contextMenuPolicy в Qt::NoContextMenu. Если вы хотите настроить контекстное меню, переопределите эту функцию. Если вы хотите расширить стандартное контекстное меню, переопределите эту функцию, вызовите createStandardContextMenu() и расширьте возвращаемое меню.

Информация об событии передаётся в объекте event.

void MyTextEdit::contextMenuEvent(QContextMenuEvent *event)
{
    QMenu *menu = createStandardContextMenu();
    menu->addAction(tr("My Menu Item"));
    //...
    menu->exec(event->globalPos());
    delete menu;
}

[slot] void QTextEdit::copy()

Копирует любой выделенный текст в буфер обмена.

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

[signal] void QTextEdit::copyAvailable(bool yes)

Этот сигнал излучается, когда текст выделен или снят с выделения в текстовом редакторе.

Когда текст выделен, этот сигнал излучается со значением yes, установленным в true. Если текст не выделен или выделенный текст снят с выделения, этот сигнал излучается со значением yes, установленным в false.

Если yes равно true, то можно использовать copy() для копирования выделения в буфер обмена. Если yes равно false, то copy() ничего не делает.

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

[virtual protected] QMimeData *QTextEdit::createMimeDataFromSelection() const

Эта функция возвращает новый объект MIME-данных, представляющий содержимое текущего выделения текстового редактора. Она вызывается, когда выделение необходимо упаковать в новый объект QMimeData; например, когда начинается операция перетаскивания или когда данные копируются в буфер обмена.

Если вы переопределите эту функцию, обратите внимание, что владение возвращённым объектом QMimeData передаётся вызывающей стороне. Выделение можно получить, используя функцию textCursor().

QMenu *QTextEdit::createStandardContextMenu()

Эта функция создаёт стандартное контекстное меню, которое отображается, когда пользователь щелкает правой кнопкой мыши по текстовому редактору. Она вызывается из обработчика contextMenuEvent() по умолчанию. Владение всплывающим меню передаётся вызывающей стороне.

Рекомендуется использовать версию createStandardContextMenu(QPoint), которая позволит активировать действия, чувствительные к месту щелчка пользователя.

QMenu *QTextEdit::createStandardContextMenu(const QPoint &position)

Эта функция создаёт стандартное контекстное меню, которое отображается при щелчке правой кнопкой мыши по редактору текста. Она вызывается обработчиком по умолчанию contextMenuEvent() и принимает position в координатах документа, где был щелчок мышью. Это позволяет активировать действия, чувствительные к месту щелчка пользователя. Владение всплывающим меню передаётся вызывающей стороне.

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

QTextCharFormat QTextEdit::currentCharFormat() const

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

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

[signal] void QTextEdit::currentCharFormatChanged(const QTextCharFormat &f)

Этот сигнал излучается, если формат текущего символа изменился, например, из-за изменения позиции курсора.

Новый формат — f.

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

QFont QTextEdit::currentFont() const

Возвращает шрифт текущего формата.

См. также setCurrentFont(), setFontFamily() и setFontPointSize().

QTextCursor QTextEdit::cursorForPosition(const QPoint &pos) const

Возвращает QTextCursor в позиции pos (в координатах области просмотра).

[signal] void QTextEdit::cursorPositionChanged()

Этот сигнал излучается всякий раз, когда изменяется положение курсора.

QRect QTextEdit::cursorRect(const QTextCursor &cursor) const

Возвращает прямоугольник (в координатах области просмотра), включающий cursor.

QRect QTextEdit::cursorRect() const

Возвращает прямоугольник (в координатах области просмотра), включающий курсор редактора текста.

[slot] void QTextEdit::cut()

Копирует выделенный текст в буфер обмена и удаляет его из редактора текста.

Если выделенного текста нет, ничего не происходит.

См. также copy() и paste().

[override virtual protected] void QTextEdit::dragEnterEvent(QDragEnterEvent *e)

Переопределено из QAbstractScrollArea::dragEnterEvent().

[override virtual protected] void QTextEdit::dragLeaveEvent(QDragLeaveEvent *e)

Переопределено из QAbstractScrollArea::dragLeaveEvent().

[override virtual protected] void QTextEdit::dragMoveEvent(QDragMoveEvent *e)

Переопределено из QAbstractScrollArea::dragMoveEvent().

[override virtual protected] void QTextEdit::dropEvent(QDropEvent *e)

Переопределено из QAbstractScrollArea::dropEvent().

void QTextEdit::ensureCursorVisible()

Обеспечивает видимость курсора, прокручивая редактор текста при необходимости.

QList<QTextEdit::ExtraSelection> QTextEdit::extraSelections() const

Возвращает ранее заданные дополнительные выделения.

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

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

bool QTextEdit::find(const QString &exp, QTextDocument::FindFlags options = QTextDocument::FindFlags())

Ищет следующее вхождение строки exp с использованием заданных options. Возвращает true если exp найдено и изменяет курсор для выделения совпадения; в противном случае возвращает false.

bool QTextEdit::find(const QRegExp &exp, QTextDocument::FindFlags options = QTextDocument::FindFlags())

Это перегруженная функция.

Ищет следующее вхождение, соответствующее регулярному выражению exp, с использованием заданных options. Опция QTextDocument::FindCaseSensitively игнорируется для этой перегрузки, используйте QRegExp::caseSensitivity вместо неё.

Возвращает true если совпадение найдено и изменяет курсор для выделения совпадения; в противном случае возвращает false.

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

[override virtual protected] void QTextEdit::focusInEvent(QFocusEvent *e)

Переопределено из QWidget::focusInEvent().

[override virtual protected] bool QTextEdit::focusNextPrevChild(bool next)

Переопределено из QWidget::focusNextPrevChild().

[override virtual protected] void QTextEdit::focusOutEvent(QFocusEvent *e)

Переопределено из QWidget::focusOutEvent().

QString QTextEdit::fontFamily() const

Возвращает семейство шрифтов текущего формата.

См. также setFontFamily(), setCurrentFont() и setFontPointSize().

bool QTextEdit::fontItalic() const

Возвращает true если шрифт текущего формата курсивный; в противном случае возвращает false.

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

qreal QTextEdit::fontPointSize() const

Возвращает размер шрифта текущего формата.

См. также setFontFamily(), setCurrentFont() и setFontPointSize().

bool QTextEdit::fontUnderline() const

Возвращает true если шрифт текущего формата подчеркнут; в противном случае возвращает false.

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

int QTextEdit::fontWeight() const

Возвращает начертание шрифта текущего формата.

См. также setFontWeight(), setCurrentFont(), setFontPointSize() и QFont::Weight.

[override virtual protected] void QTextEdit::inputMethodEvent(QInputMethodEvent *e)

Переопределено из QWidget::inputMethodEvent().

[override virtual] QVariant QTextEdit::inputMethodQuery(Qt::InputMethodQuery property) const

Переопределено из QWidget::inputMethodQuery().

[virtual protected] void QTextEdit::insertFromMimeData(const QMimeData *source)

Эта функция вставляет содержимое объекта MIME данных, заданного source, в редактор текста в текущей позиции курсора. Она вызывается всякий раз, когда текст вставляется в результате операции вставки из буфера обмена или когда редактор текста принимает данные из операции перетаскивания.

Переопределите эту функцию, чтобы включить поддержку перетаскивания для дополнительных типов MIME.

[slot] void QTextEdit::insertHtml(const QString &text)

Удобный слот, который вставляет text, предполагая, что он имеет html-форматирование в текущей позиции курсора.

Он эквивалентен:

edit->textCursor().insertHtml(fragment);

Примечание: При использовании этой функции со стилем, стиль будет применяться только к текущему блоку в документе. Для применения стиля ко всему документу используйте QTextDocument::setDefaultStyleSheet() вместо этого.

[slot] void QTextEdit::insertPlainText(const QString &text)

Удобный слот, который вставляет text в текущую позицию курсора.

Он эквивалентен

edit->textCursor().insertText(text);

[override virtual protected] void QTextEdit::keyPressEvent(QKeyEvent *e)

Переопределено из QAbstractScrollArea::keyPressEvent().

[override virtual protected] void QTextEdit::keyReleaseEvent(QKeyEvent *e)

Переопределено из QWidget::keyReleaseEvent().

[virtual] QVariant QTextEdit::loadResource(int type, const QUrl &name)

Загружает ресурс, указанный заданным type и name.

Эта функция является расширением QTextDocument::loadResource().

Примечание: Эта функция может быть вызвана через мета-объектную систему и из QML. См. Q_INVOKABLE.

См. также QTextDocument::loadResource().

void QTextEdit::mergeCurrentCharFormat(const QTextCharFormat &modifier)

Объединяет свойства, указанные в modifier, в текущий формат символа, вызывая QTextCursor::mergeCharFormat на курсоре редактора. Если у редактора есть выделение, то свойства modifier напрямую применяются к выделению.

См. также QTextCursor::mergeCharFormat().

[override virtual protected] void QTextEdit::mouseDoubleClickEvent(QMouseEvent *e)

Переопределено из QAbstractScrollArea::mouseDoubleClickEvent().

[override virtual protected] void QTextEdit::mouseMoveEvent(QMouseEvent *e)

Переопределено из QAbstractScrollArea::mouseMoveEvent().

[override virtual protected] void QTextEdit::mousePressEvent(QMouseEvent *e)

Переопределено из QAbstractScrollArea::mousePressEvent().

[override virtual protected] void QTextEdit::mouseReleaseEvent(QMouseEvent *e)

Переопределено из QAbstractScrollArea::mouseReleaseEvent().

void QTextEdit::moveCursor(QTextCursor::MoveOperation operation, QTextCursor::MoveMode mode = QTextCursor::MoveAnchor)

Перемещает курсор, выполняя заданную operation.

Если mode равен QTextCursor::KeepAnchor, курсор выделяет текст, над которым он перемещается. Это тот же эффект, который пользователь достигает, удерживая нажатой клавишу Shift и перемещая курсор с помощью клавиш курсора.

Функция была добавлена в Qt 4.2.

См. также QTextCursor::movePosition().

[override virtual protected] void QTextEdit::paintEvent(QPaintEvent *event)

Переопределено из QAbstractScrollArea::paintEvent().

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

Предупреждение: Базовый документ текста не должен изменяться в переопределении этой функции.

[slot] void QTextEdit::paste()

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

Если в буфере обмена нет текста, ничего не происходит.

Чтобы изменить поведение этой функции, т.е. чтобы изменить то, что QTextEdit может вставлять и как это происходит, переопределите виртуальные функции canInsertFromMimeData() и insertFromMimeData().

См. также cut() и copy().

void QTextEdit::print(QPagedPaintDevice *printer) const

Удобная функция для печати документа текстового редактора на заданный printer. Это эквивалентно вызову метода print для документа напрямую, за исключением того, что эта функция также поддерживает QPrinter::Selection как диапазон печати.

Функция была добавлена в Qt 4.3.

См. также QTextDocument::print().

[slot] void QTextEdit::redo()

Повторяет последнее действие.

Если нет действия для повторения, т.е. нет шага повторения в истории отмены/повторения, ничего не происходит.

Функция была добавлена в Qt 4.2.

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

[signal] void QTextEdit::redoAvailable(bool available)

Этот сигнал испускается всякий раз, когда операции повторения становятся доступными (available равно true) или недоступными (available равно false).

[override virtual protected] void QTextEdit::resizeEvent(QResizeEvent *e)

Переопределено из QAbstractScrollArea::resizeEvent().

[override virtual protected] void QTextEdit::scrollContentsBy(int dx, int dy)

Переопределено из QAbstractScrollArea::scrollContentsBy().

[slot] void QTextEdit::scrollToAnchor(const QString &name)

Прокручивает текстовый редактор так, чтобы якорь с заданным name был виден; ничего не делает, если name пустое, или уже видно, или не найдено.

[slot] void QTextEdit::selectAll()

Выделяет весь текст.

См. также copy(), cut() и textCursor().

[signal] void QTextEdit::selectionChanged()

Этот сигнал испускается всякий раз, когда изменяется выделение.

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

[slot] void QTextEdit::setAlignment(Qt::Alignment a)

Устанавливает выравнивание текущего абзаца на a. Допустимые выравнивания — Qt::AlignLeft, Qt::AlignRight, Qt::AlignJustify и Qt::AlignCenter (горизонтальное центрирование).

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

void QTextEdit::setCurrentCharFormat(const QTextCharFormat &format)

Устанавливает формат символа, используемый при вставке нового текста, на format, вызывая QTextCursor::setCharFormat() на курсоре редактора. Если у редактора есть выделение, то формат символа напрямую применяется к выделению.

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

[slot] void QTextEdit::setCurrentFont(const QFont &f)

Устанавливает шрифт текущего формата на f.

См. также currentFont(), setFontPointSize() и setFontFamily().

void QTextEdit::setExtraSelections(const QList<QTextEdit::ExtraSelection> &selections)

Эта функция позволяет временно помечать определённые области в документе заданным цветом, указанным как selections. Это может быть полезно, например, в редакторе программ для выделения всей строки текста с заданным фоновым цветом, чтобы указать на наличие точки останова.

Функция была добавлена в Qt 4.2.

См. также QTextEdit::ExtraSelection и extraSelections().

[slot] void QTextEdit::setFontFamily(const QString &fontFamily)

Устанавливает семейство шрифтов текущего формата на fontFamily.

См. также fontFamily() и setCurrentFont().

[slot] void QTextEdit::setFontItalic(bool italic)

Если italic имеет значение true, устанавливает текущий формат в курсив; в противном случае устанавливает текущий формат в некурсивный.

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

[slot] void QTextEdit::setFontPointSize(qreal s)

Устанавливает размер шрифта текущего формата в s пунктов.

Обратите внимание, что если s равно нулю или отрицательно, поведение этой функции не определено.

См. также fontPointSize(), setCurrentFont() и setFontFamily().

[slot] void QTextEdit::setFontUnderline(bool underline)

Если underline имеет значение true, устанавливает текущий формат в подчеркнутый; в противном случае устанавливает текущий формат в неподчеркнутый.

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

[slot] void QTextEdit::setFontWeight(int weight)

Устанавливает начертание шрифта текущего формата на заданное значение weight, значение которого должно находиться в диапазоне, определённом перечислением QFont::Weight.

См. также fontWeight(), setCurrentFont() и setFontFamily().

[slot] void QTextEdit::setPlainText(const QString &text)

Изменяет текст текстового поля на строку text. Предыдущий текст удаляется.

text интерпретируется как обычный текст.

Обратите внимание, что история отмены/повторного выполнения операций сбрасывается этой функцией.

Примечание: Функция-сеттер для свойства plainText.

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

[slot] void QTextEdit::setText(const QString &text)

Устанавливает текст текстового поля в text. Текст может быть обычным или HTML, и текстовое поле попытается определить правильный формат.

Используйте setHtml() или setPlainText() напрямую, чтобы избежать предположения текстового поля.

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

См. также toPlainText() и toHtml().

[slot] void QTextEdit::setTextBackgroundColor(const QColor &c)

Устанавливает цвет фона текста текущего формата в c.

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

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

[slot] void QTextEdit::setTextColor(const QColor &c)

Устанавливает цвет текста текущего формата в c.

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

void QTextEdit::setTextCursor(const QTextCursor &cursor)

Устанавливает видимый курсор.

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

[override virtual protected] void QTextEdit::showEvent(QShowEvent *)

Переопределено из QWidget::showEvent().

QColor QTextEdit::textBackgroundColor() const

Возвращает цвет фона текста текущего формата.

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

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

[signal] void QTextEdit::textChanged()

Этот сигнал излучается всякий раз, когда содержимое документа изменяется; например, при вставке или удалении текста, или при применении форматирования.

Примечание: Сигнал-уведомление для свойства html.

QColor QTextEdit::textColor() const

Возвращает цвет текста текущего формата.

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

QTextCursor QTextEdit::textCursor() const

Возвращает копию QTextCursor, представляющую текущий видимый курсор. Обратите внимание, что изменения в возвращённом курсоре не влияют на курсор QTextEdit; используйте setTextCursor(), чтобы обновить видимый курсор.

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

QString QTextEdit::toPlainText() const

QString QTextEdit::toPlainText() const

Возвращает текст текстового поля в виде простого текста.

Примечание: Функция-геттер для свойства plainText.

См. также QTextEdit::setPlainText().

[slot] void QTextEdit::undo()

Отменяет последнюю операцию.

Если отменять нечего, т.е. в истории отмены/повторного выполнения нет шага отмены, ничего не происходит.

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

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

[signal] void QTextEdit::undoAvailable(bool available)

Этот сигнал излучается всякий раз, когда операции отмены становятся доступными (available равно true) или недоступными (available равно false).

[override virtual protected] void QTextEdit::wheelEvent(QWheelEvent *e)

Переопределено из QAbstractScrollArea::wheelEvent().

[slot] void QTextEdit::zoomIn(int range = 1)

Увеличивает масштаб текста, увеличивая размер базового шрифта на range пунктов и пересчитывая все размеры шрифтов на новый размер. Это не изменяет размер изображений.

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

[slot] void QTextEdit::zoomOut(int range = 1)

Это перегруженная функция.

Уменьшает масштаб текста, уменьшая размер базового шрифта на range пунктов и пересчитывая все размеры шрифтов на новый размер. Это не изменяет размер изображений.

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

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/archives/qt-5.11/qtextedit.html

Spec-Zone.ru

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