Тип QML TextInput
Отображает редактируемую строку текста. Подробнее...
| Заявление об импорте: | import QtQuick 2.12 |
| Наследует: |
Свойства
- acceptableInput : bool
- activeFocusOnPress : bool
- autoScroll : bool
- bottomPadding : real
- canPaste : bool
- canRedo : bool
- canUndo : bool
- цвет : color
- высота содержимого : real
- ширина содержимого : real
- делегат курсора : Component
- позиция курсора : int
- прямоугольник курсора : rectangle
- видимость курсора : bool
- отображаемый текст : string
- режим отображения : перечисление
- эффективное выравнивание по горизонтали : перечисление
- font.жирный : bool
- font.регистр : перечисление
- font.шрифт : string
- font.предпочтение начертания : перечисление
- font.курсив : bool
- font.кернинг : bool
- font.пробелы между буквами : real
- font.размер в пикселях : int
- font.размер в пунктах : real
- font.предпочитать форматирование : bool
- font.зачеркнутый : bool
- font.имя стиля : string
- font.подчеркнутый : bool
- font.вес : перечисление
- font.пробелы между словами : real
- выравнивание по горизонтали : перечисление
- маска ввода : string
- ввод метода составления : bool
- подсказки метода ввода : перечисление
- отступ слева : real
- длина : int
- максимальная длина : int
- режим выделения мышью : перечисление
- режим перезаписи : bool
- отступ : real
- символ пароля : string
- задержка маски пароля : int
- постоянное выделение : bool
- предварительный текст : string
- только для чтения : bool
- тип отрисовки : перечисление
- отступ справа : real
- выделение мышью : bool
- выделенный текст : string
- цвет выделенного текста : color
- цвет выделения : color
- конец выделения : int
- начало выделения : int
- текст : string
- отступ сверху : real
- валидатор : Validator
- выравнивание по вертикали : перечисление
- режим переноса : перечисление
Сигналы
Методы
- очистить()
- скопировать()
- вырезать()
- отменить выделение()
- обеспечить видимость(int позиция)
- string получить текст(int начало, int конец)
- вставить(int позиция, string текст)
- isRightToLeft(int начало, int конец)
- переместить курсор выделения(int позиция, SelectionMode mode = TextInput.SelectCharacters)
- вставить()
- int позиция по(real x, real y, CursorPosition position = CursorBetweenCharacters)
- rect позиция к прямоугольнику(int pos)
- повторить()
- удалить(int начало, int конец)
- выделить(int начало, int конец)
- выделить все()
- выделить слово()
- отменить()
Подробное описание
Тип TextInput отображает одну строку редактируемого простого текста.
TextInput используется для приема строки входных данных. Ограничения ввода могут быть наложены на элемент TextInput (например, через валидатор или маску ввода), а установка режима отображения на соответствующее значение позволяет использовать TextInput для поля ввода пароля.
На macOS сочетания клавиш Вверх/Вниз для клавиш Домой/Конец явно отключены. Если вам нужны такие сочетания клавиш (на любой платформе), вам необходимо создать их в QML.
Документация по свойствам
acceptableInput : bool
Это свойство всегда равно true, если не установлен валидатор или маска ввода. Если валидатор или маска ввода установлены, это свойство будет истинным только в том случае, если текущий текст приемлем для валидатора или маски ввода как окончательная строка (а не как промежуточная).
activeFocusOnPress : bool
Указывает, должен ли TextInput получить активный фокус при нажатии мыши. По умолчанию это значение равно true.
autoScroll : bool
Указывает, должен ли TextInput прокручиваться, если текст длиннее ширины. По умолчанию это значение равно true.
См. также ensureVisible().
bottomPadding : real
Эти свойства задают отступы вокруг содержимого. Это пространство резервируется дополнительно к contentWidth и contentHeight.
Это свойство было добавлено в Qt 5.6.
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.
effectiveHorizontalAlignment : enumeration
Устанавливает горизонтальное выравнивание текста внутри ширины и высоты элемента TextInput. По умолчанию выравнивание текста соответствует естественному выравниванию текста, например, текст, который читается слева направо, будет выровнен по левому краю.
TextInput не имеет вертикального выравнивания, так как естественная высота точно равна высоте одной строки текста. Если вы зададите высоту вручную больше, чем необходимо, TextInput всегда будет выровнен по верхнему краю вертикально. Вы можете использовать якоря, чтобы выровнять его так, как вам нужно, внутри другого элемента.
Допустимые значения для horizontalAlignment — TextInput.AlignLeft, TextInput.AlignRight и TextInput.AlignHCenter.
Допустимые значения для verticalAlignment — TextInput.AlignTop (по умолчанию), TextInput.AlignBottom TextInput.AlignVCenter.
При использовании присоединённого свойства LayoutMirroring::enabled для отражения макетов приложения, горизонтальное выравнивание текста также будет отражено. Однако свойство horizontalAlignment останется неизменным. Чтобы запросить эффективное горизонтальное выравнивание TextInput, используйте свойство только для чтения effectiveHorizontalAlignment.
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 : вещественное
Устанавливает интерлиньяж шрифта.
Интерлиньяж изменяет стандартное расстояние между отдельными буквами в шрифте. Положительное значение увеличивает интерлиньяж на соответствующее количество пикселей; отрицательное значение уменьшает расстояние.
font.pixelSize : целое
Устанавливает размер шрифта в пикселях.
Использование этой функции делает шрифт зависимым от устройства. Используйте pointSize для установки размера шрифта независимо от устройства.
font.pointSize : вещественное
Устанавливает размер шрифта в пунктах. Размер в пунктах должен быть больше нуля.
font.preferShaping : логическое
Иногда шрифт применяет сложные правила к набору символов для правильного отображения. В некоторых письменных системах, таких как брахмические скрипты, это необходимо для удобочитаемости текста, но в, например, латинском шрифте это просто косметическая функция. Установка свойства preferShaping в значение false отключит все такие функции, когда они не требуются, что в большинстве случаев улучшит производительность.
Значение по умолчанию — true.
TextInput { text: "Some text"; font.preferShaping: false } Это свойство было добавлено в Qt 5.10.
font.strikeout : логическое
Устанавливает, имеет ли шрифт стиль зачёркивания.
font.styleName : строка
Устанавливает имя стиля шрифта.
Имя стиля нечувствительно к регистру. При установке шрифт будет сопоставляться с именем стиля вместо свойств шрифта font.weight, font.bold и font.italic.
Это свойство было добавлено в Qt 5.6.
font.underline : логическое
Устанавливает, подчеркнут ли текст.
font.weight : перечисление
Устанавливает толщину шрифта.
Толщина может быть одной из следующих:
- 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 : вещественное
Устанавливает интерлиньяж слов для шрифта.
Интерлиньяж слов изменяет стандартное расстояние между отдельными словами. Положительное значение увеличивает расстояние между словами на соответствующее количество пикселей, а отрицательное значение уменьшает интерлиньяж слов.
horizontalAlignment : перечисление
Устанавливает горизонтальное выравнивание текста внутри ширины и высоты элемента TextInput. По умолчанию выравнивание текста соответствует естественному выравниванию, например, текст, читаемый слева направо, выравнивается слева.
TextInput не имеет вертикального выравнивания, так как естественная высота точно соответствует высоте одной строки текста. Если вы установите высоту вручную на что-то большее, TextInput всегда будет выровнен по верху. Вы можете использовать якоря для выравнивания по вашему желанию внутри другого элемента.
Допустимые значения для horizontalAlignment — TextInput.AlignLeft, TextInput.AlignRight и TextInput.AlignHCenter.
Допустимые значения для verticalAlignment — TextInput.AlignTop (по умолчанию), TextInput.AlignBottom TextInput.AlignVCenter.
При использовании присоединённого свойства LayoutMirroring::enabled для зеркального отображения макетов приложения горизонтальное выравнивание текста также будет зеркальным. Однако свойство horizontalAlignment останется неизменным. Чтобы запросить эффективное горизонтальное выравнивание TextInput, используйте только для чтения свойство effectiveHorizontalAlignment.
inputMask : строка
Позволяет установить маску ввода для TextInput, ограничивая допустимые вводимые тексты. См. QLineEdit::inputMask для получения дополнительных сведений, так как те же самые строки маски используются TextInput.
См. также acceptableInput и validator.
inputMethodComposing : логическое
Это свойство указывает, имеет ли TextInput частичный ввод текста от метода ввода.
Пока он формируется, метод ввода может полагаться на события мыши или клавиатуры от TextInput для редактирования или подтверждения частичного текста. Это свойство можно использовать для определения того, когда следует отключить обработчики событий, которые могут помешать правильной работе метода ввода.
inputMethodHints : перечисление
Предоставляет подсказки методу ввода о ожидаемом содержании вводимого текста и о том, как он должен работать.
Значение является побитовым сочетанием флагов или 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 : вещественное
Эти свойства хранят отступы вокруг содержимого. Это пространство зарезервировано дополнительно к contentWidth и contentHeight.
Это свойство было добавлено в Qt 5.6.
length : целое
Возвращает общее количество символов в элементе TextInput.
Если у TextInput есть inputMask, длина будет включать символы маски и может отличаться от длины строки, возвращаемой свойством text.
Это свойство может быть быстрее, чем запрос длины свойства text, так как не требует копирования или преобразования внутренних данных строки TextInput.
maximumLength : целое
Максимально разрешенная длина текста в TextInput.
Если текст слишком длинный, он усекается до предела.
По умолчанию это свойство содержит значение 32767.
mouseSelectionMode : перечисление
Определяет, как должен выбираться текст с помощью мыши.
- TextInput.SelectCharacters — Выбор обновляется отдельными символами. (По умолчанию)
- TextInput.SelectWords — Выбор обновляется целыми словами.
Это свойство применяется только когда selectByMouse равно true.
overwriteMode : логическое
Определяет, будет ли вводимый пользователем текст перезаписывать существующий текст.
Как и во многих текстовых редакторах, текстовый редактор может быть настроен на вставку или перезапись существующего текста новым вводимым пользователем текстом.
Если это свойство 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()
Повторяет последнюю операцию, если повторение доступно.
Удаляет часть текста между позициями start и end из TextInput.
Выделяет текст от позиции 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.12/qml-qtquick-textinput.html