Spec-Zone.ru › Qt 5.13

Тип QML TextInput

Отображает редактируемую строку текста. Подробнее...

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

Элемент

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

Свойства

  • acceptableInput : bool
  • activeFocusOnPress : bool
  • autoScroll : bool
  • bottomPadding : real
  • canPaste : bool
  • canRedo : bool
  • canUndo : bool
  • цвет : color
  • высота содержимого : real
  • ширина содержимого : real
  • делегат курсора : Component
  • позиция курсора : int
  • прямоугольник курсора : rectangle
  • видимость курсора : bool
  • отображаемый текст : string
  • режим отображения : перечисление
  • эффективное горизонтальное выравнивание : перечисление
  • шрифт.жирный : bool
  • шрифт.прописные : перечисление
  • шрифт.семейство : string
  • шрифт.предпочтение сглаживания : перечисление
  • шрифт.курсив : bool
  • шрифт.кернинг : bool
  • шрифт.пробелы между буквами : real
  • шрифт.размер в пикселях : int
  • шрифт.размер в пунктах : real
  • шрифт.предпочитать форматирование : bool
  • шрифт.зачёркнутый : bool
  • шрифт.имя стиля : string
  • шрифт.подчёркнутый : bool
  • шрифт.жирность : перечисление
  • шрифт.пробелы между словами : real
  • горизонтальное выравнивание : перечисление
  • маска ввода : string
  • ввод метода композиции : bool
  • подсказки метода ввода : перечисление
  • левый отступ : real
  • длина : int
  • максимальная длина : int
  • режим выбора мышью : перечисление
  • режим перезаписи : bool
  • отступ : real
  • символ пароля : string
  • задержка маски пароля : int
  • постоянный выбор : bool
  • предварительно отредактированный текст : string
  • только для чтения : bool
  • тип отрисовки : перечисление
  • правый отступ : real
  • выбирать мышью : bool
  • выделенный текст : string
  • цвет выделенного текста : цвет
  • цвет выделения : цвет
  • конец выделения : int
  • начало выделения : int
  • текст : string
  • верхний отступ : real
  • валидатор : Validator
  • вертикальное выравнивание : перечисление
  • режим перевода на новую строку : перечисление

Сигналы

  • принято()
  • редактирование завершено()
  • текст отредактирован()

Методы

  • очистить()
  • копировать()
  • вырезать()
  • отменить выбор()
  • гарантировать видимость(позиция)
  • строка получить текст(начало, int конец)
  • вставить(позиция, строка текст)
  • является справа налево(начало, int конец)
  • переместить выделение курсора(позиция, SelectionMode режим = TextInput.SelectCharacters)
  • вставить()
  • int позиция в(x, real y, CursorPosition позиция = CursorBetweenCharacters)
  • прямоугольник позиция в прямоугольник(pos)
  • повторить()
  • удалить(начало, int конец)
  • выделить(начало, int конец)
  • выделить все()
  • выделить слово()
  • отменить()

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

Тип TextInput отображает одну строку редактируемого простого текста.

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

В macOS сочетания клавиш Вверх/Вниз для Home/End явно отключены. Если вам нужны такие сочетания клавиш (на любой платформе), вам необходимо создать их в QML.

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

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

отступ : real

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

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

горизонтальное выравнивание : перечисление

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

END_OF_DOCUMENT_MARKER

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

Допустимые значения для horizontalAlignment — TextInput.AlignLeft, TextInput.AlignRight и TextInput.AlignHCenter.

Допустимые значения для verticalAlignment — TextInput.AlignTop (по умолчанию), TextInput.AlignBottom TextInput.AlignVCenter.

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

acceptableInput : bool

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

activeFocusOnPress : bool

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

autoScroll : bool

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

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

canPaste : bool

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

canRedo : bool

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

canUndo : bool

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

color : color

Цвет текста.

contentHeight : real

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

contentWidth : real

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

cursorDelegate : Component

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

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

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

cursorPosition : int

Положение курсора в TextInput.

cursorRectangle : rectangle

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

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

cursorVisible : bool

Устанавливается в значение true, когда TextInput отображает курсор.

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

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

Не следует устанавливать его напрямую на элемент, как в приведённом ниже QML, так как указанное значение будет перезаписано и потеряно при изменении фокуса.

TextInput {
    text: "Text"
    cursorVisible: false
}

В приведенном выше фрагменте курсор по-прежнему будет отображаться при получении TextInput активного фокуса.

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

Это текст, отображаемый в TextInput.

Если echoMode установлен в TextInput::Normal, это свойство содержит то же значение, что и свойство TextInput::text. В противном случае это свойство содержит текст, видимый пользователю, а свойство text содержит фактически введённый текст.

Примечание: В отличие от свойства TextInput::text, это свойство содержит частичный ввод текста от метода ввода.

См. также preeditText.

echoMode : enumeration

Указывает, как текст должен отображаться в TextInput.

  • TextInput.Normal — отображает текст как есть. (По умолчанию)
  • TextInput.Password — отображает символы маски пароля, зависящие от платформы, вместо фактических символов.
  • TextInput.NoEcho — ничего не отображает.
  • TextInput.PasswordEchoOnEdit — отображает символы по мере ввода во время редактирования, в противном случае идентично TextInput.Password.

font.bold : bool

Устанавливает, должен ли шрифт быть полужирным.

font.capitalization : enumeration

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

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

font.family : string

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

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

font.hintingPreference : enumeration

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

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

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

Font.PreferNoHinting — по возможности рендерить текст без кернинга контуров глифов. Разметка текста будет типографически точной, используя те же метрики, что и, например, при печати.

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

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

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

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

font.italic : bool

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

font.kerning : bool

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

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

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

font.letterSpacing : real

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

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

font.pixelSize : int

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

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

font.pointSize : real

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

font.preferShaping : bool

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

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

TextInput { 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
TextInput { text: "Hello"; font.weight: Font.DemiBold }

font.wordSpacing : real

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

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

inputMask : string

Позволяет установить маску ввода для TextInput, ограничивая допустимые ввод текста. Подробнее см. QLineEdit::inputMask, так как TextInput использует точно такие же строки маски.

См. также acceptableInput и validator.

inputMethodComposing : bool

Это свойство содержит информацию о том, имеет ли TextInput частичный ввод текста от метода ввода.

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

inputMethodHints : enumeration

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

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

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

  • Qt.ImhHiddenText — символы должны быть скрыты, как это обычно используется при вводе паролей. Это автоматически устанавливается при установке echoMode в TextInput.Password.
  • Qt.ImhSensitiveData — введённый текст не должен храниться активным методом ввода в любом постоянном хранилище, например, в прогнозируемом словаре пользователя.
  • Qt.ImhNoAutoUppercase — метод ввода не должен автоматически переключаться на верхний регистр при окончании предложения.
  • Qt.ImhPreferNumbers — числа предпочтительны (но не обязательны).
  • Qt.ImhPreferUppercase — заглавные буквы предпочтительны (но не обязательны).
  • Qt.ImhPreferLowercase — строчные буквы предпочтительны (но не обязательны).
  • Qt.ImhNoPredictiveText — не использовать предсказательный текст (т.е. поиск по словарю) во время набора текста.
  • Qt.ImhDate — текстовый редактор функционирует как поле даты.
  • Qt.ImhTime — текстовый редактор функционирует как поле времени.
  • Qt.ImhMultiLine — текстовый редактор не закрывает программную клавиатуру при нажатии клавиши Return или Enter (с QtQuick 2.4).

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

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

Маски:

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

length : int

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

Если у TextInput есть inputMask, длина будет включать символы маски и может отличаться от длины строки, возвращаемой свойством text.

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

maximumLength : int

Максимально допустимая длина текста в элементе TextInput.

Если текст слишком длинный, он усекается до предела.

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

mouseSelectionMode : enumeration

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

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

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

overwriteMode : bool

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

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

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

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

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

passwordCharacter : string

Это символ, отображаемый при echoMode установлен в Password или PasswordEchoOnEdit. По умолчанию это символ пароля, используемый темой платформы.

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

passwordMaskDelay : int

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

Метод reset вызывается при присвоении undefined.

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

persistentSelection : bool

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

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

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

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

См. также displayText.

readOnly : bool

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

Если readOnly установлено в true, то пользовательский ввод не повлияет на свойство text. Связывания или попытки установить свойство text всё равно будут работать.

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

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

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

  • Text.QtRendering
  • Text.NativeRendering

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

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

selectByMouse : bool

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

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

selectedText : строка

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

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

myTextInput.text.toString().substring(myTextInput.selectionStart,
    myTextInput.selectionEnd);

selectedTextColor : цвет

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

selectionColor : цвет

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

selectionEnd : целое число

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

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

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

selectionStart : целое число

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

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

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

text : строка

Текст в TextInput.

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

validator : Validator

Позволяет установить валидатор для TextInput. При установке валидатора TextInput будет принимать только ввод, который оставляет свойство text в приемлемом или промежуточном состоянии. Сигнал принятия будет отправлен только в том случае, если текст находится в приемлемом состоянии при нажатии Enter.

В настоящее время поддерживаются валидаторы IntValidator, DoubleValidator и RegExpValidator. Пример использования валидаторов показан ниже, который позволяет вводить целые числа от 11 до 31 в текстовый ввод:

import QtQuick 2.0
TextInput{
    validator: IntValidator{bottom: 11; top: 31;}
    focus: true
}

См. также acceptableInput и inputMask.

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

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

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

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

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

accepted()

Этот сигнал испускается при нажатии клавиш Return или Enter. Обратите внимание, что если для текстового ввода установлен валидатор или inputMask, сигнал будет испущен только в том случае, если ввод находится в приемлемом состоянии.

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

editingFinished()

Этот сигнал испускается при нажатии клавиш Return или Enter или при потере фокуса текстовым вводом. Обратите внимание, что если для текстового ввода установлен валидатор или inputMask, и нажата Enter/Return, этот сигнал будет испущен только в том случае, если ввод соответствует inputMask и валидатор возвращает приемлемое состояние.

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

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

textEdited()

Этот сигнал испускается всякий раз, когда текст редактируется. В отличие от textChanged(), этот сигнал не испускается, когда текст изменяется программно, например, путем изменения значения свойства text или вызова clear().

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

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

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

clear()

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

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

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

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

copy()

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

Примечание: Если режим отображения установлен на другой, чем Normal, то copy не сработает. Это делается для предотвращения использования copy как метода обхода функций паролей управления строкой.

cut()

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

Примечание: Если режим отображения установлен на другой, чем Normal, то cut не сработает. Это делается для предотвращения использования cut как метода обхода функций паролей управления строкой.

deselect()

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

ensureVisible(position)

Прокручивает содержимое текстового ввода так, чтобы указанный символ position был виден внутри границ текстового ввода.

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

См. также autoScroll.

строка getText(start, целое число end)

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

Если у TextInput есть inputMask, длина будет включать символы маски.

insert(position, строка text)

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

isRightToLeft(start, целое число end)

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

moveCursorSelection(position, SelectionMode mode = TextInput.SelectCharacters)

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

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

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

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

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

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

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

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

paste()

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

int positionAt(x, real y, CursorPosition position = CursorBetweenCharacters)

Эта функция возвращает позицию символа в x и y пикселях от левого верхнего угла textInput. Позиция 0 находится перед первым символом, позиция 1 находится после первого символа, но перед вторым и так далее до позиции text.length, которая находится после всех символов.

Это означает, что для всех значений x перед первым символом эта функция возвращает 0, а для всех значений x после последнего символа возвращает text.length. Если значение y находится выше текста, позиция будет ближайшим символом на первой строке, а если ниже текста — позицией ближайшего символа на последней строке.

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

  • TextInput.CursorBetweenCharacters — Возвращает позицию между символами, которая наиболее близка к x.
  • TextInput.CursorOnCharacter — Возвращает позицию перед символом, которая наиболее близка к x.

rect positionToRectangle(pos)

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

Это аналогично установке cursorPosition и последующему запросу прямоугольника курсора, но cursorPosition не изменяется.

redo()

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

remove(start, int end)

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

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.13/qml-qtquick-textinput.html

Spec-Zone.ru

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