Spec-Zone.ru › Qt 5.15

Класс QPlainTextEdit

Класс QPlainTextEdit предоставляет виджет для редактирования и отображения простого текста. Подробнее...

Заголовок: #include <QPlainTextEdit>
qmake: QT += widgets
С момента: Qt 4.4
Наследует: QAbstractScrollArea

Этот класс был представлен в Qt 4.4.

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

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

Перечисление LineWrapMode { NoWrap, WidgetWidth }

Свойства

  • backgroundVisible : bool
  • blockCount : const int
  • centerOnScroll : bool
  • cursorWidth : int
  • documentTitle : QString
  • lineWrapMode : LineWrapMode
  • maximumBlockCount : int
  • overwriteMode : bool
  • placeholderText : QString
  • plainText : QString
  • readOnly : bool
  • tabChangesFocus : bool
  • tabStopDistance : qreal
  • textInteractionFlags : Qt::TextInteractionFlags
  • undoRedoEnabled : bool
  • wordWrapMode : QTextOption::WrapMode

Общедоступные функции

QPlainTextEdit(const QString &text, QWidget *parent = nullptr)
QPlainTextEdit(QWidget *parent = nullptr)
virtual ~QPlainTextEdit()
QString anchorAt(const QPoint &pos) const
bool backgroundVisible() const
int blockCount() const
bool canPaste() const
bool centerOnScroll() const
QMenu * createStandardContextMenu()
QMenu * createStandardContextMenu(const QPoint &position)
QTextCharFormat currentCharFormat() const
QTextCursor cursorForPosition(const QPoint &pos) const
QRect cursorRect(const QTextCursor &cursor) const
QRect cursorRect() const
int cursorWidth() const
QTextDocument * document() const
QString documentTitle() const
void ensureCursorVisible()
QList<QTextEdit::ExtraSelection> extraSelections() const
bool find(const QString &exp, QTextDocument::FindFlags options = QTextDocument::FindFlags())
bool find(const QRegExp &exp, QTextDocument::FindFlags options = QTextDocument::FindFlags())
bool find(const QRegularExpression &exp, QTextDocument::FindFlags options = QTextDocument::FindFlags())
bool isReadOnly() const
bool isUndoRedoEnabled() const
QPlainTextEdit::LineWrapMode lineWrapMode() const
virtual QVariant loadResource(int type, const QUrl &name)
int maximumBlockCount() const
void mergeCurrentCharFormat(const QTextCharFormat &modifier)
void moveCursor(QTextCursor::MoveOperation operation, QTextCursor::MoveMode mode = QTextCursor::MoveAnchor)
bool overwriteMode() const
QString placeholderText() const
void print(QPagedPaintDevice *printer) const
void setBackgroundVisible(bool visible)
void setCenterOnScroll(bool enabled)
void setCurrentCharFormat(const QTextCharFormat &format)
void setCursorWidth(int width)
void setDocument(QTextDocument *document)
void setDocumentTitle(const QString &title)
void setExtraSelections(const QList<QTextEdit::ExtraSelection> &selections)
void setLineWrapMode(QPlainTextEdit::LineWrapMode mode)
void setMaximumBlockCount(int maximum)
void setOverwriteMode(bool overwrite)
void setPlaceholderText(const QString &placeholderText)
void setReadOnly(bool ro)
void setTabChangesFocus(bool b)
void setTabStopDistance(qreal distance)
void setTextCursor(const QTextCursor &cursor)
void setTextInteractionFlags(Qt::TextInteractionFlags flags)
void setUndoRedoEnabled(bool enable)
void setWordWrapMode(QTextOption::WrapMode policy)
bool tabChangesFocus() const
qreal tabStopDistance() const
QTextCursor textCursor() const
Qt::TextInteractionFlags textInteractionFlags() const
QString toPlainText() const
QTextOption::WrapMode wordWrapMode() const

Реализованные публичные функции

виртуальный QVariant inputMethodQuery(Qt::InputMethodQuery property) const override

Public Slots

void appendHtml(const QString &html)
void appendPlainText(const QString &text)
void centerCursor()
void clear()
void copy()
void cut()
void insertPlainText(const QString &text)
void paste()
void redo()
void selectAll()
void setPlainText(const QString &text)
void undo()
void zoomIn(int range = 1)
void zoomOut(int range = 1)

Сигналы

void blockCountChanged(int newBlockCount)
void copyAvailable(bool yes)
void cursorPositionChanged()
void modificationChanged(bool changed)
void redoAvailable(bool available)
void selectionChanged()
void textChanged()
void undoAvailable(bool available)
void updateRequest(const QRect &rect, int dy)

Protected Functions

QRectF blockBoundingGeometry(const QTextBlock &block) const
QRectF blockBoundingRect(const QTextBlock &block) const
виртуальный bool canInsertFromMimeData(const QMimeData *source) const
QPointF contentOffset() const
виртуальный QMimeData * createMimeDataFromSelection() const
QTextBlock firstVisibleBlock() const
QAbstractTextDocumentLayout::PaintContext getPaintContext() const
виртуальный void insertFromMimeData(const QMimeData *source)

Переопределённые защищённые функции

виртуальный void changeEvent(QEvent *e) override
виртуальный void contextMenuEvent(QContextMenuEvent *event) override
виртуальный void dragEnterEvent(QDragEnterEvent *e) override
виртуальный void dragLeaveEvent(QDragLeaveEvent *e) override
виртуальный void dragMoveEvent(QDragMoveEvent *e) override
виртуальный void dropEvent(QDropEvent *e) override
виртуальный void focusInEvent(QFocusEvent *e) override
виртуальный bool focusNextPrevChild(bool next) override
виртуальный void focusOutEvent(QFocusEvent *e) override
виртуальный void inputMethodEvent(QInputMethodEvent *e) override
виртуальный void keyPressEvent(QKeyEvent *e) override
виртуальный void keyReleaseEvent(QKeyEvent *e) override
виртуальный void mouseDoubleClickEvent(QMouseEvent *e) override
виртуальный void mouseMoveEvent(QMouseEvent *e) override
виртуальный void mousePressEvent(QMouseEvent *e) override
виртуальный void mouseReleaseEvent(QMouseEvent *e) override
виртуальный void paintEvent(QPaintEvent *e) override
виртуальный void resizeEvent(QResizeEvent *e) override
виртуальный void scrollContentsBy(int dx, int dy) override
виртуальный void showEvent(QShowEvent *) override
виртуальный void wheelEvent(QWheelEvent *e) override

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

Вступление и концепции

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

QPlainText использует очень похожие технологии и концепции, что и QTextEdit, но оптимизирован для обработки простого текста.

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

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

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

Текст устанавливается или заменяется с помощью setPlainText(), который удаляет существующий текст и заменяет его текстом, переданным в setPlainText().

Текст можно вставлять, используя класс QTextCursor, или используя удобные функции insertPlainText(), appendPlainText() или paste().

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

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

Если вы хотите ограничить общее количество абзацев в QPlainTextEdit, например, для просмотра логов, вы можете использовать свойство maximumBlockCount. Сочетание setMaximumBlockCount() и appendPlainText() превращает QPlainTextEdit в эффективный просмотрщик текстовых логов. Прокрутку можно уменьшить с помощью свойства centerOnScroll(), что делает просмотрщик логов еще быстрее. Текст можно форматировать ограниченным способом, либо используя подсветку синтаксиса (см. ниже), либо добавляя отформатированный HTML-текст с помощью appendHtml(). Хотя QPlainTextEdit не поддерживает сложное форматирование богатого текста с таблицами и плавающими элементами, он поддерживает ограниченное форматирование на основе абзацев, которое может потребоваться в просмотрщике логов.

Связки клавиш для чтения только

При использовании QPlainTextEdit для только чтения связки клавиш ограничены навигацией, и текст можно выделять только мышкой:

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

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

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

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

QPlainTextEdit содержит объект QTextDocument, который можно получить с помощью метода document(). Вы также можете установить свой собственный объект документа с помощью setDocument(). QTextDocument генерирует сигнал textChanged(), если текст изменяется, а также предоставляет функцию isModified(), которая вернёт true, если текст был изменён с момента его загрузки или с момента последнего вызова setModified с false в качестве аргумента. Кроме того, он предоставляет методы отмены и повтора.

Подсветка синтаксиса

Так же, как и QTextEdit, QPlainTextEdit работает вместе с QSyntaxHighlighter.

Связки клавиш для редактирования

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

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

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

Отличия от QTextEdit

QPlainTextEdit — тонкий класс, реализованный с использованием большей части технологий, лежащих в основе QTextEdit и QTextDocument. Преимущества производительности по сравнению с QTextEdit в основном связаны с использованием другого и упрощенного текстового макета, называемого QPlainTextDocumentLayout в документе текста (см. QTextDocument::setDocumentLayout()). Макет простого текстового документа не поддерживает таблицы и встроенные фреймы, и заменяет точное вычисление высоты пикселей подходом прокрутки строка за строкой или абзац за абзацем. Это позволяет обрабатывать значительно большие документы, а также позволяет изменять размер редактора с включенным переносом строк в режиме реального времени. Это также делает просмотрщик логов быстрым (см. setMaximumBlockCount()).

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

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

enum QPlainTextEdit::LineWrapMode

Константа Значение
QPlainTextEdit::NoWrap 0
QPlainTextEdit::WidgetWidth 1

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

backgroundVisible : bool

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

Если установлено в true, то текстовый редактор рисует фон палитры в области просмотра, не занятой текстом документа. В противном случае, если установлено в false, фон не рисуется. Эта функция позволяет пользователю визуально различать область документа, окрашенную основным цветом палитры, и пустую область, не занятую документом.

По умолчанию значение равно false.

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

bool backgroundVisible() const
void setBackgroundVisible(bool visible)

blockCount : const int

Это свойство содержит количество блоков текста в документе.

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

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

int blockCount() const

centerOnScroll : bool

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

Если установлено в true, текстовый редактор прокручивает документ вертикально, чтобы сделать курсор видимым в центре области просмотра. Это также позволяет текстовому редактору прокручивать ниже конца документа. В противном случае, если установлено в false, текстовый редактор прокручивает минимально возможное количество, чтобы убедиться, что курсор виден. Такой же алгоритм применяется к любой новой строке, добавленной с помощью appendPlainText().

По умолчанию значение равно false.

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

bool centerOnScroll() const
void setCenterOnScroll(bool enabled)

См. также centerCursor() и ensureCursorVisible().

cursorWidth : int

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

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

int cursorWidth() const
void setCursorWidth(int width)

documentTitle : QString

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

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

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

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

lineWrapMode : LineWrapMode

Это свойство содержит режим перевода строки.

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

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

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

maximumBlockCount : int

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

Устанавливает максимальное количество блоков в документе. Если в документе больше блоков, чем указано в этом свойстве, блоки удаляются с начала документа.

Отрицательное или нулевое значение означает, что документ может содержать неограниченное количество блоков.

Значение по умолчанию равно 0.

Обратите внимание, что установка этого свойства немедленно применит ограничение к содержимому документа. Установка этого свойства также отключает историю отмены/повтора.

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

int maximumBlockCount() const
void setMaximumBlockCount(int maximum)

overwriteMode : bool

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

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

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

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

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

bool overwriteMode() const
void setOverwriteMode(bool overwrite)

placeholderText : QString

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

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

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

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

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

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

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

plainText : QString

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

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

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

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

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

void textChanged()

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

Определяет, как метка должна взаимодействовать с пользовательским вводом, если она отображает текст.

Если флаги содержат либо Qt::LinksAccessibleByKeyboard, либо Qt::TextSelectableByKeyboard, то политика фокуса также автоматически устанавливается в Qt::ClickFocus.

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

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

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

undoRedoEnabled : bool

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

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

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

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

bool isUndoRedoEnabled() const
void setUndoRedoEnabled(bool enable)

wordWrapMode : QTextOption::WrapMode

Это свойство содержит режим, который QPlainTextEdit будет использовать при обёртывании текста по словам.

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

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

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

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

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

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

Конструирует QPlainTextEdit с родителем parent. Редактор текста будет отображать обычный текст text.

QPlainTextEdit::QPlainTextEdit(QWidget *parent = nullptr)

Конструирует пустой QPlainTextEdit с родителем parent.

[slot] void QPlainTextEdit::appendHtml(const QString &html)

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

appendPlainText()

[slot] void QPlainTextEdit::appendPlainText(const QString &text)

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

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

[signal] void QPlainTextEdit::blockCountChanged(int newBlockCount)

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

[slot] void QPlainTextEdit::centerCursor()

Прокручивает документ так, чтобы курсор оказался по центру по вертикали.

См. также ensureCursorVisible() и centerOnScroll.

[slot] void QPlainTextEdit::clear()

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

Примечания:

  • История отмены/повтора также очищается.
  • currentCharFormat() сбрасывается, если textCursor() не находится в начале документа.

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

[slot] void QPlainTextEdit::copy()

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

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

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

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

При выделении текста этот сигнал будет испущен со значением yes, равным true. Если текст не выделен или выделенный текст отменён, этот сигнал испускается со значением yes, равным false.

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

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

[signal] void QPlainTextEdit::cursorPositionChanged()

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

[slot] void QPlainTextEdit::cut()

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

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

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

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

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

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

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

[signal] void QPlainTextEdit::modificationChanged(bool changed)

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

Например, вызов setModified(false) на документе, а затем вставка текста вызывает испускание сигнала. Если вы отменяете эту операцию, возвращая документ в исходное неизменённое состояние, сигнал будет снова испущен.

[slot] void QPlainTextEdit::paste()

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

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

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

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

[slot] void QPlainTextEdit::redo()

Повторяет последнюю операцию.

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

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

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

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

[slot] void QPlainTextEdit::selectAll()

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

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

[signal] void QPlainTextEdit::selectionChanged()

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

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

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

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

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

Примечания:

  • История отмены/повтора также очищается.
  • currentCharFormat() сбрасывается, если textCursor() не находится в начале документа.

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

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

[signal] void QPlainTextEdit::textChanged()

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

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

[slot] void QPlainTextEdit::undo()

Отменяет последнее действие.

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

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

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

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

[signal] void QPlainTextEdit::updateRequest(const QRect &rect, int dy)

Этот сигнал излучается, когда документу текста требуется обновление указанной области rect. Если текст прокручен, rect будет охватывать всю область просмотра. Если текст прокручен вертикально, dy указывает на количество пикселей, на которое была прокручена область просмотра.

Цель сигнала — поддержка дополнительных виджетов в подклассах QPlainTextEdit, например, отображающих номера строк, точки останова или другую дополнительную информацию.

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

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

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

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

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

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

[virtual] QPlainTextEdit::~QPlainTextEdit()

Деструктор.

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

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

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

[protected] QRectF QPlainTextEdit::blockBoundingGeometry(const QTextBlock &block) const

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

См. также firstVisibleBlock() и blockBoundingRect().

[protected] QRectF QPlainTextEdit::blockBoundingRect(const QTextBlock &block) const

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

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

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

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

bool QPlainTextEdit::canPaste() const

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

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

Переопределяет: QFrame::changeEvent(QEvent *ev).

[protected] QPointF QPlainTextEdit::contentOffset() const

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

Начальная точка содержимого текстового редактора всегда находится в левом верхнем углу первого видимого блока текста. Смещение содержимого отличается от (0,0), когда текст прокручен по горизонтали или когда первый видимый блок частично скрыт за пределами экрана, т.е. видимый текст не начинается с первой строки первого видимого блока, или когда первый видимый блок является первым блоком и редактор отображает отступ.

См. также firstVisibleBlock(), horizontalScrollBar() и verticalScrollBar().

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

Переопределяет: QAbstractScrollArea::contextMenuEvent(QContextMenuEvent *e).

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

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

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

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

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

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

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

QMenu *QPlainTextEdit::createStandardContextMenu()

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

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

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

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

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

QTextCharFormat QPlainTextEdit::currentCharFormat() const

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

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

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

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

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

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

QRect QPlainTextEdit::cursorRect() const

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

QTextDocument *QPlainTextEdit::document() const

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

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

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

Переопределяет: QAbstractScrollArea::dragEnterEvent(QDragEnterEvent *event).

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

Переопределяет: QAbstractScrollArea::dragLeaveEvent(QDragLeaveEvent *event).

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

Переопределяет: QAbstractScrollArea::dragMoveEvent(QDragMoveEvent *event).

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

Переопределяет: QAbstractScrollArea::dropEvent(QDropEvent *event).

void QPlainTextEdit::ensureCursorVisible()

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

См. также centerCursor() и centerOnScroll.

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

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

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

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

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

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

Это перегруженный метод.

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

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

Этот метод был введён в Qt 5.3.

bool QPlainTextEdit::find(const QRegularExpression &exp, QTextDocument::FindFlags options = QTextDocument::FindFlags())

Это перегруженный метод.

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

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

Этот метод был введён в Qt 5.13.

[protected] QTextBlock QPlainTextEdit::firstVisibleBlock() const

Возвращает первый видимый блок.

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

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

Переопределяет: QWidget::focusInEvent(QFocusEvent *event).

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

Переопределяет: QWidget::focusNextPrevChild(bool next).

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

Переопределяет: QWidget::focusOutEvent(QFocusEvent *event).

[protected] QAbstractTextDocumentLayout::PaintContext QPlainTextEdit::getPaintContext() const

Возвращает контекст отрисовки для viewport(), полезно только при переопределении paintEvent().

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

Переопределяет: QWidget::inputMethodEvent(QInputMethodEvent *event).

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

Переопределяет: QWidget::inputMethodQuery(Qt::InputMethodQuery query) const.

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

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

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

Переопределяет: QAbstractScrollArea::keyPressEvent(QKeyEvent *e).

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

Переопределяет: QWidget::keyReleaseEvent(QKeyEvent *event).

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

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

Этот метод является расширением QTextDocument::loadResource().

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

void QPlainTextEdit::mergeCurrentCharFormat(const QTextCharFormat &modifier)

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

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

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

Переопределяет: QAbstractScrollArea::mouseDoubleClickEvent(QMouseEvent *e).

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

Переопределяет: QAbstractScrollArea::mouseMoveEvent(QMouseEvent *e).

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

Переопределяет: QAbstractScrollArea::mousePressEvent(QMouseEvent *e).

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

Переопределяет: QAbstractScrollArea::mouseReleaseEvent(QMouseEvent *e).

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

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

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

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

[override virtual protected] void QPlainTextEdit::paintEvent(QPaintEvent *e)

Переопределяет: QAbstractScrollArea::paintEvent(QPaintEvent *event).

void QPlainTextEdit::print(QPagedPaintDevice *printer) const

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

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

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

Переопределяет: QAbstractScrollArea::resizeEvent(QResizeEvent *event).

END_OF_DOCUMENT_MARKER

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

Реализует: QAbstractScrollArea::scrollContentsBy(int dx, int dy).

void QPlainTextEdit::setCurrentCharFormat(const QTextCharFormat &format)

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

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

void QPlainTextEdit::setDocument(QTextDocument *document)

Устанавливает document в качестве нового документа текстового редактора.

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

Документ должен иметь макет документа, который наследуется от QPlainTextDocumentLayout (см. QTextDocument::setDocumentLayout()).

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

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

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

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

void QPlainTextEdit::setTextCursor(const QTextCursor &cursor)

Устанавливает видимый cursor.

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

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

Реализует: QWidget::showEvent(QShowEvent *event).

QTextCursor QPlainTextEdit::textCursor() const

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

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

QString QPlainTextEdit::toPlainText() const

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

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

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

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

Реализует: QAbstractScrollArea::wheelEvent(QWheelEvent *e).

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

Spec-Zone.ru

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