Spec-Zone.ru › Qt 5.14

Тип QML TextEdit

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

Оператор импорта: import QtQuick 2.14
Наследует:

Элемент

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

Свойства

  • activeFocusOnPress : bool
  • baseUrl : url
  • bottomPadding : real
  • canPaste : bool
  • canRedo : bool
  • canUndo : bool
  • цвет : цвет
  • высота_содержимого : real
  • ширина_содержимого : real
  • делегат_курсора : Компонент
  • позиция_курсора : int
  • прямоугольник_курсора : прямоугольник
  • видимость_курсора : bool
  • эффективное_горизонтальное_выравнивание : перечисление
  • font.жирный : bool
  • font.заглавные_буквы : перечисление
  • font.шрифт : строка
  • font.предпочтение_распознавания : перечисление
  • font.курсив : bool
  • font.кернинг : bool
  • font.пробел_между_буквами : real
  • font.размер_в_пикселях : int
  • font.размер_в_пунктах : real
  • font.предпочитать_формирование : bool
  • font.зачеркнутый : bool
  • font.имя_стиля : строка
  • font.подчеркнутый : bool
  • font.вес : перечисление
  • font.пробел_между_словами : real
  • горизонтальное_выравнивание : перечисление
  • подсвеченный_ссылка : строка
  • ввод_метод_составления : bool
  • подсказки_метода_ввода : перечисление
  • левый_отступ : real
  • длина : int
  • количество_строк : int
  • режим_выбора_мышью : перечисление
  • режим_перезаписи : bool
  • отступ : real
  • постоянный_выбор : bool
  • предварительный_текст : строка
  • только_для_чтения : bool
  • тип_рендеринга : перечисление
  • правый_отступ : real
  • выбор_клавиатурой : bool
  • выбор_мышью : bool
  • выделенный_текст : строка
  • цвет_выделенного_текста : цвет
  • цвет_выбора : цвет
  • конец_выбора : int
  • начало_выбора : int
  • расстояние_табуляции : real
  • текст : строка
  • текстовый_документ : TextDocument
  • формат_текста : перечисление
  • отступ_текста : real
  • верхний_отступ : real
  • вертикальное_выравнивание : перечисление
  • режим_переноса : перечисление

Сигналы

  • editingFinished()
  • ссылка_активирована(ссылка)
  • ссылка_подсвечена(ссылка)

Методы

  • void добавить(текст)
  • очистить()
  • скопировать()
  • вырезать()
  • отменить_выбор()
  • строка получить_форматированный_текст(начало, int конец)
  • строка получить_текст(начало, int конец)
  • вставить(позиция, строка текст)
  • есть_справа_налево(начало, int конец)
  • ссылка_в_точке(x, real y)
  • переместить_выделение_курсора(позиция, SelectionMode режим)
  • вставить_из_буфера()
  • int позиция_в_точке(x, int y)
  • прямоугольник позиция_в_прямоугольник(позиция)
  • повторить()
  • строка удалить(начало, int конец)
  • выделить(начало, int конец)
  • выделить_все()
  • выделить_слово()
  • отменить()

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

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

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

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

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

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

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().

См. также Текст и Поле ввода текста.

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

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

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

Эта документация была добавлена в 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 : логическое

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

baseUrl : url

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

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

canPaste : логическое

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

canRedo : логическое

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

canUndo : логическое

Возвращает 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 : логическое

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

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

font.bold : логическое

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

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

Устанавливает правила прописных букв для текста.

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

font.family : строка

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

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

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 : логическое

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

font.kerning : логическое

Включает или выключает функцию кернинга OpenType при форматировании текста. Выключение может улучшить производительность при создании или изменении текста за счёт некоторых косметических функций. Значение по умолчанию — true.

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

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

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

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

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

font.pixelSize : целое

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

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

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

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

font.preferShaping : логическое

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

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

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

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

font.strikeout : bool

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

font.styleName : string

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

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

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

font.underline : bool

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

font.weight : enumeration

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

Вес может быть одним из следующих:

  • 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

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

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

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.

overwriteMode : bool

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

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

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

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

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

persistentSelection : bool

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

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

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

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

readOnly : bool

Указывает, может ли пользователь взаимодействовать с элементом TextEdit. Если это свойство установлено в true, текст нельзя редактировать с помощью пользовательского взаимодействия.

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

renderType : enumeration

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

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

  • Text.QtRendering
  • Text.NativeRendering

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

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

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.

tabStopDistance : real

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

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

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

text : string

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

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

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

textDocument : TextDocument

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

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

См. также QQuickTextDocument.

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

Способ отображения свойства 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 checkbox extension, будут интерактивными.

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

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

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

textMargin : real

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

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

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

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

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

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

editingFinished()

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

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

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

linkActivated(ссылка)

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

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

linkHovered(ссылка)

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

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

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

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

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

void append(text)

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

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

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

clear()

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

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

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

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

copy()

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

cut()

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

deselect()

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

string getFormattedText(start, int end)

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

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

string getText(start, int end)

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

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

insert(position, string text)

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

isRightToLeft(start, int end)

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

linkAt(x, real y)

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

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

См. также hoveredLink.

moveCursorSelection(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 (6-й и 7-й символы).

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

paste()

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

int positionAt(x, int y)

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

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

rectangle positionToRectangle(position)

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

redo()

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

string remove(start, int end)

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

select(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-5.14/qml-qtquick-textedit.html

Spec-Zone.ru

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