Spec-Zone.ru › Qt 5.11

Тип QML TextInput

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

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

Item

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

Свойства

  • acceptableInput : bool
  • activeFocusOnPress : bool
  • autoScroll : bool
  • bottomPadding : real
  • canPaste : bool
  • canRedo : bool
  • canUndo : bool
  • color : color
  • contentHeight : real
  • contentWidth : real
  • cursorDelegate : Component
  • cursorPosition : int
  • cursorRectangle : rectangle
  • cursorVisible : bool
  • displayText : string
  • echoMode : перечисление
  • effectiveHorizontalAlignment : перечисление
  • font.bold : bool
  • font.capitalization : перечисление
  • font.family : string
  • font.hintingPreference : перечисление
  • 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 : перечисление
  • font.wordSpacing : real
  • horizontalAlignment : перечисление
  • inputMask : string
  • inputMethodComposing : bool
  • inputMethodHints : перечисление
  • leftPadding : real
  • length : int
  • maximumLength : int
  • mouseSelectionMode : перечисление
  • overwriteMode : bool
  • padding : real
  • passwordCharacter : string
  • passwordMaskDelay : int
  • persistentSelection : bool
  • preeditText : string
  • readOnly : bool
  • renderType : перечисление
  • rightPadding : real
  • selectByMouse : bool
  • selectedText : string
  • selectedTextColor : цвет
  • selectionColor : цвет
  • selectionEnd : int
  • selectionStart : int
  • text : string
  • topPadding : real
  • validator : Validator
  • verticalAlignment : перечисление
  • wrapMode : перечисление

Сигналы

  • accepted()
  • editingFinished()
  • textEdited()

Методы

  • clear()
  • copy()
  • cut()
  • deselect()
  • ensureVisible(int position)
  • string getText(int start, int end)
  • insert(int position, string text)
  • isRightToLeft(int start, int end)
  • moveCursorSelection(int position, SelectionMode mode = TextInput.SelectCharacters)
  • paste()
  • int positionAt(real x, real y, CursorPosition position = CursorBetweenCharacters)
  • rect positionToRectangle(int pos)
  • redo()
  • remove(int start, int end)
  • select(int start, int end)
  • selectAll()
  • selectWord()
  • undo()

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

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

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

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

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

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

acceptableInput : bool

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

activeFocusOnPress : bool

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

autoScroll : bool

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

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

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

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

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

canPaste : булево

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

canRedo : булево

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

canUndo : булево

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

color : цвет

Цвет текста.

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

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

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

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

cursorDelegate : Компонент

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

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

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

cursorPosition : целое

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

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

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

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

cursorVisible : булево

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

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

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

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

TextInput {
    text: "Text"
    cursorVisible: false
}

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

[только для чтения] displayText : строка

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

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

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

См. также preeditText.

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

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

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

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

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

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

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

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

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

font.bold : булево

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

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

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

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

font.family : строка

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

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

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

Устанавливает предпочтительный тип кернинга текста. Это подсказка для подсистемы рендеринга текста использовать определенный уровень кернинга, и поддержка его варьируется в зависимости от платформы. Подробную информацию см. в таблице документации 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 : булево

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

font.kerning : булево

Включает или отключает функцию кернинга 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

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

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

horizontalAlignment : enumeration

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

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

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

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

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

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 — текстовый редактор не закрывает программную клавиатуру при нажатии клавиш Возврат или Ввод (с QtQuick 2.4).

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

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

Маски:

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

leftPadding : real

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

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

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.

padding : real

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

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

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 : enumeration

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

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

  • Text.QtRendering
  • Text.NativeRendering

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

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

rightPadding : real

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

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

selectByMouse : bool

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

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

selectedText : string

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

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

myTextInput.text.toString().substring(myTextInput.selectionStart,
    myTextInput.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.

text : string

Текст в TextInput.

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

topPadding : real

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

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

validator : Validator

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

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

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

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

verticalAlignment : enumeration

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

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

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

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

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

wrapMode : enumeration

Установите это свойство для перевода текста в ширину элемента 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()

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

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

cut()

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

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

deselect()

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

ensureVisible(int position)

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

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

См. также autoScroll.

string getText(int start, int end)

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

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

insert(int position, string text)

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

isRightToLeft(int start, int end)

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

moveCursorSelection(int 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 (шестой и седьмой символы).

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

paste()

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

int positionAt(real 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(int pos)

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

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

redo()

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

remove(int start, int end)

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

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/archives/qt-5.11/qml-qtquick-textinput.html

Spec-Zone.ru

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