Spec-Zone.ru › Qt

Тип QML TextEdit

Отображает несколько строк редактируемого форматированного текста. Подробнее...

Заявление об импорте: import QtQuick
Наследуется от:

Item

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

Свойства

  • activeFocusOnPress : bool
  • baseUrl : url
  • bottomPadding : real
  • canPaste : bool
  • canRedo : bool
  • canUndo : bool
  • color : color
  • contentHeight : real
  • contentWidth : real
  • cursorDelegate : Component
  • cursorPosition : int
  • cursorRectangle : rectangle
  • cursorVisible : bool
  • effectiveHorizontalAlignment : enumeration
  • font.bold : bool
  • font.capitalization : enumeration
  • font.family : string
  • font.hintingPreference : enumeration
  • font.italic : bool
  • font.kerning : bool
  • font.letterSpacing : real
  • font.pixelSize : int
  • font.pointSize : real
  • font.preferShaping : bool
  • font.strikeout : bool
  • font.styleName : string
  • font.underline : bool
  • font.weight : int
  • font.wordSpacing : real
  • horizontalAlignment : enumeration
  • hoveredLink : string
  • inputMethodComposing : bool
  • inputMethodHints : enumeration
  • leftPadding : real
  • length : int
  • lineCount : int
  • mouseSelectionMode : enumeration
  • overwriteMode : bool
  • padding : real
  • persistentSelection : bool
  • preeditText : string
  • readOnly : bool
  • renderType : enumeration
  • rightPadding : real
  • selectByKeyboard : bool
  • selectByMouse : bool
  • selectedText : string
  • selectedTextColor : color
  • selectionColor : color
  • selectionEnd : int
  • selectionStart : int
  • tabStopDistance : real
  • text : string
  • textDocument : TextDocument
  • textFormat : enumeration
  • textMargin : real
  • topPadding : real
  • verticalAlignment : enumeration
  • wrapMode : enumeration

Сигналы

  • editingFinished()
  • linkActivated(string link)
  • linkHovered(string link)

Методы

  • void append(string text)
  • clear()
  • copy()
  • cut()
  • deselect()
  • string getFormattedText(int start, int end)
  • string getText(int start, int end)
  • insert(int position, string text)
  • isRightToLeft(int start, int end)
  • linkAt(real x, real y)
  • moveCursorSelection(int position, SelectionMode mode)
  • paste()
  • int positionAt(int x, int y)
  • rectangle positionToRectangle(position)
  • redo()
  • string remove(int start, int end)
  • select(int start, int end)
  • selectAll()
  • selectWord()
  • undo()

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

Элемент TextEdit отображает блок редактируемого, форматированного текста.

Он может отображать как простой, так и форматированный текст. Например:

TextEdit {
    width: 240
    text: "<b>Hello</b> <i>World!</i>"
    font.family: "Helvetica"
    font.pointSize: 20
    color: "blue"
    focus: true
}

Установка focus на true позволяет элементу TextEdit получить фокус клавиатуры.

Обратите внимание, что TextEdit не реализует прокрутку, отслеживание курсора или другие поведения, специфичные для внешнего вида. Например, чтобы добавить прокрутку flickable, которая следует за курсором:

Flickable {
     id: flick

     width: 300; height: 200;
     contentWidth: edit.paintedWidth
     contentHeight: edit.paintedHeight
     clip: true

     function ensureVisible(r)
     {
         if (contentX >= r.x)
             contentX = r.x;
         else if (contentX+width <= r.x+r.width)
             contentX = r.x+r.width-width;
         if (contentY >= r.y)
             contentY = r.y;
         else if (contentY+height <= r.y+r.height)
             contentY = r.y+r.height-height;
     }

     TextEdit {
         id: edit
         width: flick.width
         focus: true
         wrapMode: TextEdit.Wrap
         onCursorRectangleChanged: flick.ensureVisible(cursorRectangle)
     }
 }

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

Поддержка буфера обмена осуществляется функциями cut(), copy() и paste(), а выбор можно обрабатывать с помощью традиционного механизма "мышь", установив selectByMouse, или полностью обрабатывать с помощью QML, манипулируя selectionStart и selectionEnd, или используя selectAll() или selectWord().

Можно переводить между позициями курсора (символы от начала документа) и пиксельными точками с помощью positionAt() и positionToRectangle().

См. также Text и TextInput.

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

[с 5.6] bottomPadding : real

Эти свойства задают отступы вокруг содержимого. Это пространство зарезервировано дополнительно к contentWidth и contentHeight.

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

effectiveHorizontalAlignment : перечисление

Устанавливает горизонтальное и вертикальное выравнивание текста внутри ширины и высоты элемента TextEdit. По умолчанию выравнивание текста соответствует естественному выравниванию текста, например, текст, читаемый слева направо, будет выровнен по левому краю.

Допустимые значения для horizontalAlignment:

  • TextEdit.AlignLeft (по умолчанию)
  • TextEdit.AlignRight
  • TextEdit.AlignHCenter
  • TextEdit.AlignJustify

Допустимые значения для verticalAlignment:

  • TextEdit.AlignTop (по умолчанию)
  • TextEdit.AlignBottom
  • TextEdit.AlignVCenter

При использовании присоединённого свойства LayoutMirroring::enabled для зеркального отображения макетов приложения, горизонтальное выравнивание текста также будет зеркальным. Однако, свойство horizontalAlignment останется неизменным. Чтобы запросить эффективное горизонтальное выравнивание TextEdit, используйте свойство только для чтения effectiveHorizontalAlignment.

activeFocusOnPress : bool

Указывает, должен ли TextEdit получать активный фокус при нажатии мыши. По умолчанию это значение равно true.

baseUrl : url

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

Значение по умолчанию — URL файла QML, создающего элемент TextEdit.

canPaste : bool

Возвращает true, если TextEdit разрешено для записи, и содержимое буфера обмена подходит для вставки в TextEdit.

canRedo : bool

Возвращает true, если TextEdit разрешено для записи, и есть отменённые операции, которые можно повторить.

canUndo : bool

Возвращает true, если TextEdit разрешено для записи, и есть предыдущие операции, которые можно отменить.

color : цвет

Цвет текста.

// green text using hexadecimal notation
TextEdit { color: "#00FF00" }
// steelblue text using SVG color name
TextEdit { color: "steelblue" }

contentHeight : вещественное

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

contentWidth : вещественное

Возвращает ширину текста, включая ширину, превышающую ширину, которая покрывается из-за недостаточной обёртки, если wrapMode установлен.

cursorDelegate : Компонент

Делегат для курсора в TextEdit.

Если вы зададите cursorDelegate для TextEdit, этот делегат будет использоваться для отрисовки курсора вместо стандартного курсора. Экземпляр делегата будет создан и управляется текстовым полем, когда нужен курсор, и свойства x и y экземпляра делегата будут установлены так, чтобы быть на один пиксель перед левым верхним углом текущего символа.

Обратите внимание, что корневой элемент компонента делегата должен быть элементом QQuickItem или производным от QQuickItem.

cursorPosition : целое

Позиция курсора в TextEdit.

cursorRectangle : прямоугольник

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

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

cursorVisible : bool

Если true, текстовое поле отображает курсор.

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

font.bold : bool

Устанавливает, является ли вес шрифта жирным.

font.capitalization : перечисление

Устанавливает регистр текста.

  • Font.MixedCase - Это стандартный вариант отображения текста, где не применяется изменение регистра.
  • Font.AllUppercase - Это изменяет текст на прописные буквы.
  • Font.AllLowercase - Это изменяет текст на строчные буквы.
  • Font.SmallCaps - Это изменяет текст на полужирные строчные буквы.
  • Font.Capitalize - Это изменяет текст так, что первая буква каждого слова отображается заглавной.
TextEdit { text: "Hello"; font.capitalization: Font.AllLowercase }

font.family : строка

Задает имя семейства шрифта.

Имя семейства не чувствительно к регистру и может необязательно включать имя типографии, например, "Helvetica [Cronyx]". Если семейство доступно из более чем одной типографии, а типография не указана, выбирается произвольная типография. Если семейство недоступно, семейство будет установлено с помощью алгоритма подбора шрифтов.

[since 5.8] font.hintingPreference : перечисление

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

Примечание: Это свойство имеет эффект только при использовании вместе с типом рендеринга TextEdit.NativeRendering.

Font.PreferDefaultHinting - Используйте уровень подгонки по умолчанию для целевой платформы.

Font.PreferNoHinting - Если возможно, отобразите текст без подгонки контуров глифов. Макет текста будет типографически точным, используя те же метрики, что используются, например, при печати.

Font.PreferVerticalHinting - Если возможно, отобразите текст без горизонтальной подгонки, но выровняйте глифы к пиксельной сетке в вертикальном направлении. Текст будет казаться более чётким на дисплеях, где плотность слишком низкая, чтобы обеспечить точное отображение глифов. Но поскольку горизонтальные метрики глифов не подгоняются, макет текста будет масштабироваться до устройств с большей плотностью (например, принтеров), не затрагивая детали, такие как переводы строк.

Font.PreferFullHinting - Если возможно, отобразите текст с подгонкой как в горизонтальном, так и в вертикальном направлениях. Текст будет изменён для повышения читаемости на целевом устройстве, но поскольку метрики будут зависеть от целевого размера текста, позиции глифов, переносы строк и другие типографические детали не будут масштабироваться, что означает, что макет текста может выглядеть по-разному на устройствах с различной плотностью пикселей.

TextEdit { text: "Hello"; renderType: TextEdit.NativeRendering; font.hintingPreference: Font.PreferVerticalHinting }

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

font.italic : bool

Устанавливает, имеет ли шрифт курсивный стиль.

[since 5.10] font.kerning : bool

Включает или отключает керинг-функцию OpenType при форматировании текста. Отключение этого может улучшить производительность при создании или изменении текста, в ущерб некоторым косметическим функциям. Значение по умолчанию равно true.

TextEdit { text: "OATS FLAVOUR WAY"; kerning: font.false }

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

font.letterSpacing : вещественное

Устанавливает интерлиньяж шрифта.

Интерлиньяж изменяет стандартное расстояние между отдельными буквами в шрифте. Положительное значение увеличивает интерлиньяж на соответствующие пиксели; отрицательное значение уменьшает интерлиньяж.

font.pixelSize : целое

Устанавливает размер шрифта в пикселях.

Использование этой функции делает шрифт зависящим от устройства. Используйте TextEdit::font.pointSize, чтобы установить размер шрифта независимо от устройства.

font.pointSize : вещественное

Устанавливает размер шрифта в пунктах. Размер шрифта должен быть больше нуля.

[since 5.10] font.preferShaping : bool

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

Значение по умолчанию — true.

TextEdit { text: "Some text"; font.preferShaping: false }

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

font.strikeout : bool

Устанавливает, имеет ли шрифт стиль зачеркивания.

[с 5.6] font.styleName : string

Устанавливает имя стиля шрифта.

Имя стиля регистронезависимое. Если установлено, шрифт будет сопоставляться с именем стиля вместо свойств шрифта font.weight, font.bold и font.italic.

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

font.underline : bool

Устанавливает, подчеркнуто ли текст.

font.weight : int

Запрашиваемая толщина шрифта. Запрашиваемая толщина должна быть целым числом от 1 до 1000 или одним из предопределённых значений:

  • Font.Thin
  • Font.Light
  • Font.ExtraLight
  • Font.Normal - по умолчанию
  • Font.Medium
  • Font.DemiBold
  • Font.Bold
  • Font.ExtraBold
  • Font.Black
TextEdit { text: "Hello"; font.weight: Font.DemiBold }

font.wordSpacing : real

Устанавливает межсловный интервал для шрифта.

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

[с 5.2] hoveredLink : string

Это свойство содержит строку ссылки, когда пользователь наводит курсор на ссылку, встроенную в текст. Ссылка должна быть в формате rich text или HTML, а строка ссылки предоставляет доступ к конкретной ссылке.

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

См. также linkHovered и linkAt().

inputMethodComposing : bool

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

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

inputMethodHints : enumeration

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

Значение является побитовым сочетанием флагов или Qt.ImhNone, если подсказки не заданы.

Флаги, изменяющие поведение:

  • Qt.ImhHiddenText - Символы должны быть скрыты, как обычно используется при вводе паролей.
  • Qt.ImhSensitiveData - Введённый текст не должен храниться активным методом ввода в любом постоянном хранилище, например, в предсказательном словаре пользователя.
  • Qt.ImhNoAutoUppercase - Метод ввода не должен пытаться автоматически переключаться на заглавные буквы при окончании предложения.
  • Qt.ImhPreferNumbers - Цифры предпочтительны (но не обязательны).
  • Qt.ImhPreferUppercase - Заглавные буквы предпочтительны (но не обязательны).
  • Qt.ImhPreferLowercase - Строчные буквы предпочтительны (но не обязательны).
  • Qt.ImhNoPredictiveText - Не использовать предсказательный текст (т.е. поиск в словаре) во время ввода.
  • Qt.ImhDate - Поле редактирования текста функционирует как поле даты.
  • Qt.ImhTime - Поле редактирования текста функционирует как поле времени.

Флаги, ограничивающие ввод (исключительные флаги):

  • Qt.ImhDigitsOnly - Разрешены только цифры.
  • Qt.ImhFormattedNumbersOnly - Разрешен только ввод чисел. Это включает десятичную точку и знак минус.
  • Qt.ImhUppercaseOnly - Разрешен только ввод заглавных букв.
  • Qt.ImhLowercaseOnly - Разрешен только ввод строчных букв.
  • Qt.ImhDialableCharactersOnly - Разрешены только символы, подходящие для набора номера телефона.
  • Qt.ImhEmailCharactersOnly - Разрешены только символы, подходящие для адресов электронной почты.
  • Qt.ImhUrlCharactersOnly - Разрешены только символы, подходящие для URL-адресов.

Маски:

  • Qt.ImhExclusiveInputMask - Эта маска имеет ненулевое значение, если используется любой из исключительных флагов.

length : int

Возвращает общее количество символов простого текста в элементе TextEdit.

Так как это число не включает какие-либо метки форматирования, оно может отличаться от длины строки, возвращаемой свойством text.

Это свойство может быть быстрее, чем запрос длины свойства text, так как оно не требует копирования или преобразования внутренних данных строки TextEdit.

lineCount : int

Возвращает общее количество строк в элементе TextEdit.

mouseSelectionMode : enumeration

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

  • TextEdit.SelectCharacters - Выбор обновляется отдельными символами. (По умолчанию)
  • TextEdit.SelectWords - Выбор обновляется целыми словами.

Это свойство применяется только когда selectByMouse равно true.

[с 5.8] overwriteMode : bool

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

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

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

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

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

persistentSelection : bool

Указывает, должен ли TextEdit сохранять видимость выделения, когда он теряет активный фокус на другой элемент в сцене. По умолчанию это значение равно false.

[только для чтения, с 5.7] preeditText : string

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

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

readOnly : bool

Указывает, может ли пользователь взаимодействовать с элементом TextEdit. Если это свойство установлено в true, текст не может быть изменён пользователем.

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

renderType : enumeration

Переопределяет тип рендеринга по умолчанию для этого компонента.

Поддерживаемые типы рендеринга:

  • Text.QtRendering
  • Text.NativeRendering

Выберите Text.NativeRendering, если вы предпочитаете, чтобы текст выглядел родным на целевой платформе и не требуете расширенных функций, таких как преобразование текста. Использование таких функций в сочетании с типом рендеринга NativeRendering даст плохие и иногда пикселизированные результаты.

Тип рендеринга по умолчанию определяется QQuickWindow::textRenderType().

[с 5.1] selectByKeyboard : bool

По умолчанию равно true, когда редактор редактируемый, и false, когда только для чтения.

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

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

См. также readOnly.

selectByMouse : bool

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

Если true, пользователь может использовать мышь для выбора текста каким-либо платформозависимым способом. Обратите внимание, что для некоторых платформ это может быть неподходящее взаимодействие; это может конфликтовать с тем, как текст должен вести себя внутри Flickable, например.

selectedText : string

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

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

//myTextEdit is the id of the TextEdit
myTextEdit.text.toString().substring(myTextEdit.selectionStart,
        myTextEdit.selectionEnd);

selectedTextColor : color

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

selectionColor : color

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

selectionEnd : int

Положение курсора после последнего символа в текущем выделении.

Это свойство только для чтения. Чтобы изменить выделение, используйте select(start,end), selectAll() или selectWord().

См. также selectionStart, cursorPosition и selectedText.

selectionStart : int

Положение курсора перед первым символом в текущем выделении.

Это свойство является только для чтения. Чтобы изменить выбор, используйте select(start,end), selectAll() или selectWord().

См. также selectionEnd, cursorPosition и selectedText.

[since 5.10] tabStopDistance : real

Расстояние по умолчанию в единицах устройства между отступами табуляции.

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

См. также QTextOption::setTabStopDistance().

text : string

Текст для отображения. Если формат текста — AutoText, текстовое поле автоматически определит, следует ли обрабатывать текст как форматированный текст. Это определение выполняется с помощью Qt::mightBeRichText(). Однако, распознавание Markdown не является автоматическим.

Свойство text, в основном, подходит для задания начального содержимого и обработки изменений относительно небольшого текстового содержимого. Методы append(), insert() и remove() обеспечивают более точный контроль и значительно лучшую производительность при модификации, особенно большого форматированного текстового содержимого.

См. также clear() и textFormat.

[since 5.1] textDocument : TextDocument

Возвращает QQuickTextDocument данного элемента TextEdit. Его можно использовать для реализации подсветки синтаксиса с помощью QSyntaxHighlighter.

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

См. также QQuickTextDocument.

textFormat : enumeration

Способ отображения свойства text.

Поддерживаемые форматы текста:

Постоянная Описание
TextEdit.PlainText (по умолчанию) все теги стилей обрабатываются как обычный текст
TextEdit.AutoText определяется с помощью эвристики Qt::mightBeRichText()
TextEdit.RichText подмножество HTML 4
TextEdit.MarkdownText CommonMark плюс расширения GitHub для таблиц и задач (с Qt 5.14)

По умолчанию — TextEdit.PlainText. Если формат текста установлен в TextEdit.AutoText, текстовое поле автоматически определяет, следует ли обрабатывать текст как форматированный. Это определение выполняется с помощью Qt::mightBeRichText(), которое может обнаружить наличие тега HTML в первой строке текста, но не может отличить Markdown от простого текста.

Column {
    TextEdit {
        font.pointSize: 24
        textFormat: TextEdit.AutoText
        text: "<b>Hello</b> <i>World!</i>"
    }
    TextEdit {
        font.pointSize: 24
        textFormat: TextEdit.RichText
        text: "<b>Hello</b> <i>World!</i>"
    }
    TextEdit {
        font.pointSize: 24
        textFormat: TextEdit.PlainText
        text: "<b>Hello</b> <i>World!</i>"
    }
    TextEdit {
        font.pointSize: 24
        textFormat: TextEdit.MarkdownText
        text: "**Hello** *World!*"
    }
}

При значении TextEdit.MarkdownText, флажки, полученные с помощью расширения GitHub для флажков, можно взаимодействовать.

Примечание: Взаимодействие с вводом разметки или форматирования Markdown не поддерживается.

Примечание: При значении Text.MarkdownText, а также при поддержанном подмножестве HTML, некоторые декоративные элементы не отрисовываются так, как в веб-браузере:

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

textMargin : real

Отступ в пикселях вокруг текста в элементе TextEdit.

wrapMode : enumeration

Установите это свойство для обрезки текста до ширины элемента TextEdit. Текст будет обрезаться только в случае явного задания ширины.

  • TextEdit.NoWrap — обрезка не выполняется. Если текст содержит недостаточно символов переноса строки, implicitWidth превысит заданную ширину.
  • TextEdit.WordWrap — обрезка выполняется только по границам слов. Если слово слишком длинное, implicitWidth превысит заданную ширину.
  • TextEdit.WrapAnywhere — обрезка выполняется в любой точке строки, даже если она находится посередине слова.
  • TextEdit.Wrap — если возможно, обрезка выполняется по границе слова; в противном случае она будет выполнена в подходящей точке строки, даже посередине слова.

По умолчанию — TextEdit.NoWrap. Если вы задаете ширину, рассмотрите использование TextEdit.Wrap.

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

[since 5.6] editingFinished()

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

Примечание: Соответствующий обработчик — onEditingFinished.

Этот сигнал был добавлен в Qt 5.6.

linkActivated(string link)

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

Примечание: Соответствующий обработчик — onLinkActivated.

[since 5.2] linkHovered(string link)

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

Примечание: Соответствующий обработчик — onLinkHovered.

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

См. также hoveredLink и linkAt().

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

[since 5.2] void append(string text)

Добавляет новый абзац с text в конец элемента TextEdit.

Для добавления без вставки нового абзаца, вызовите myTextEdit.insert(myTextEdit.length, text).

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

[since 5.7] clear()

Очищает содержимое текстового поля и сбрасывает частичный ввод текста от метода ввода.

Используйте этот метод вместо установки свойства text в пустую строку.

Этот метод был добавлен в Qt 5.7.

См. также QInputMethod::reset().

copy()

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

cut()

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

deselect()

Удаляет выделение текста.

string getFormattedText(int start, int end)

Возвращает часть текста между позициями start и end.

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

string getText(int start, int end)

Возвращает часть текста между позициями start и end.

Возвращаемый текст не включает форматирование rich text.

insert(int position, string text)

Вставляет text в TextEdit по позиции position.

isRightToLeft(int start, int end)

Возвращает true, если естественное направление чтения текста редактора между позициями start и end — справа налево.

[since 5.3] linkAt(real x, real y)

Возвращает строку ссылки в точке x, y в координатах содержимого, или пустую строку, если ссылки в этой точке нет.

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

См. также hoveredLink.

moveCursorSelection(int position, SelectionMode mode)

Перемещает курсор в position и обновляет выделение в соответствии с необязательным параметром mode. (Чтобы только переместить курсор, установите свойство cursorPosition).

При вызове этого метода дополнительно устанавливается либо selectionStart, либо selectionEnd (в зависимости от того, какое из значений находилось в предыдущей позиции курсора) в указанную позицию. Это позволяет легко расширять и сокращать выделенный диапазон текста.

Режим выделения определяет, обновляется ли выделение по символам или по словам. Если не указано, режим выделения будет по умолчанию TextEdit.SelectCharacters.

  • TextEdit.SelectCharacters - Устанавливает либо selectionStart, либо selectionEnd (в зависимости от предыдущей позиции курсора) в указанную позицию.
  • TextEdit.SelectWords - Устанавливает selectionStart и selectionEnd для включения всех слов между указанной позицией и предыдущей позицией курсора. Слова, частично попадающие в диапазон, также включаются.

Например, рассмотрим такую последовательность вызовов:

cursorPosition = 5
moveCursorSelection(9, TextEdit.SelectCharacters)
moveCursorSelection(7, TextEdit.SelectCharacters)

Это перемещает курсор в позицию 5, расширяет конец выделения с 5 до 9, а затем сокращает конец выделения с 9 до 7, оставляя текст с позиции 5 до 7 выделенным (шестой и седьмой символы).

Такая же последовательность с TextEdit.SelectWords расширит selectionStart до границы слова перед или на позиции 5 и расширит selectionEnd до границы слова на или после позиции 9.

paste()

Заменяет текущий выделенный текст содержимым системного буфера обмена.

int positionAt(int x, int y)

Возвращает позицию текста, наиболее близкую к пиксельной позиции (x, y).

Позиция 0 находится перед первым символом, позиция 1 — после первого, но перед вторым символом и так далее, до позиции text.length, которая находится после всех символов.

rectangle positionToRectangle(position)

Возвращает прямоугольник в заданной позиции position в тексте. Свойства x, y и высота соответствуют курсору, который описывает эту позицию.

redo()

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

string remove(int start, int end)

Удаляет часть текста, находящуюся между позициями start и end из TextEdit.

select(int start, int end)

Выделяет текст с позиции start до end.

Если либо start, либо end находятся вне диапазона, выделение не изменяется.

После вызова этого метода selectionStart станет меньшим, а selectionEnd — большим значением (независимо от порядка, переданного в этот метод).

См. также selectionStart и selectionEnd.

selectAll()

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

selectWord()

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

undo()

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

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

Spec-Zone.ru

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