Spec-Zone.ru › Qt 5.11

Тип QML TextField

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

Выражение импорта: import QtQuick.Controls 1.4
С тех пор: Qt 5.1
Наследует:

FocusScope

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

Свойства

  • acceptableInput : bool
  • activeFocusOnPress : bool
  • canPaste : bool
  • canRedo : bool
  • canUndo : bool
  • cursorPosition : int
  • cursorRectangle : rect
  • displayText : string
  • echoMode : перечисление
  • effectiveHorizontalAlignment : перечисление
  • font : шрифт
  • horizontalAlignment : перечисление
  • hovered : bool
  • inputMask : строка
  • inputMethodComposing : bool
  • inputMethodHints : перечисление
  • length : int
  • maximumLength : int
  • menu : Компонент
  • placeholderText : строка
  • readOnly : bool
  • selectByMouse : bool
  • selectedText : строка
  • selectionEnd : int
  • selectionStart : int
  • text : строка
  • textColor : цвет
  • validator : Validator
  • verticalAlignment : перечисление

Сигналы

  • accepted()
  • editingFinished()

Методы

  • void copy()
  • void cut()
  • void deselect()
  • string getText(int start, int end)
  • void insert(int position, string text)
  • bool isRightToLeft(int start, int end)
  • void paste()
  • void redo()
  • void remove(int start, int end)
  • void select(int start, int end)
  • void selectAll()
  • void selectWord()
  • void undo()

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

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

TextField {
    placeholderText: qsTr("Enter name")
}

Вы можете создать пользовательский вид для TextField, назначив TextFieldStyle.

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

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

[только для чтения] acceptableInput : bool

Возвращает true , если текстовое поле содержит допустимый текст.

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

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

См. также validator, inputMask и accepted.

activeFocusOnPress : bool

Это свойство установлено в true , если TextField должен получить активный фокус при нажатии мышью.

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

[только для чтения] canPaste : bool

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

[только для чтения] canRedo : bool

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

[только для чтения] canUndo : bool

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

cursorPosition : int

Это свойство содержит положение курсора в TextField.

[только для чтения] cursorRectangle : rect

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

Это свойство было добавлено в QtQuick.Controls 1.3.

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

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

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

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

Определяет, как должен отображаться текст в TextField.

Возможные режимы:

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

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

Получает эффективное горизонтальное выравнивание текста в ширине элемента TextField.

horizontalAlignment содержит значение по умолчанию для горизонтального выравнивания.

См. также horizontalAlignment.

font : шрифт

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

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

Устанавливает выравнивание текста внутри ширины элемента TextField.

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

Возможные значения выравнивания:

  • TextInput.AlignLeft
  • TextInput.AlignRight
  • TextInput.AlignHCenter

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

[только для чтения] hovered : bool

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

inputMask : строка

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

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

[только для чтения] inputMethodComposing : bool

Это свойство содержит значение, указывающее, получает ли TextField частичный ввод текста от метода ввода.

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

Это свойство было добавлено в QtQuick.Controls 1.3.

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

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

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

Значение по умолчанию 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 - Редактор текста не закрывает программную клавиатуру при нажатии клавиши Enter (с версии QtQuick.Controls 1.3).

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

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

Маски:

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

[только для чтения] length : целое число

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

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

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

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

Это свойство содержит максимальную допустимую длину текста в TextField.

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

menu : Компонент

Это свойство содержит меню редактирования Menu для работы с выделением текста. Установите значение null если меню не требуется.

Это свойство было добавлено в QtQuick.Controls 1.3.

placeholderText : строка

Это свойство содержит текст, отображаемый в текстовом поле, когда текстовое поле пустое.

readOnly : bool

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

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

selectByMouse : bool

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

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

Это свойство было добавлено в QtQuick.Controls 1.3.

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

Предоставляет текст, который сейчас выделен в текстовом вводе.

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

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

[только для чтения] selectionEnd : целое число

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

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

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

[только для чтения] selectionStart : целое число

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

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

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

text : строка

Это свойство содержит текст в элементе TextField.

textColor : цвет

Это свойство содержит цвет текста.

validator : Validator

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

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

import QtQuick 2.2
import QtQuick.Controls 1.2

TextField {
    validator: IntValidator {bottom: 11; top: 31;}
    focus: true
}

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

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

Устанавливает выравнивание текста по высоте элемента TextField.

Возможные значения выравнивания:

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

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

accepted()

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

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

editingFinished()

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

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

Этот сигнал был введён в QtQuick.Controls 1.1.

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

void copy()

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

void cut()

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

void deselect()

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

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

Удаляет фрагмент текста между позициями start и end в элементе TextField.

void insert(целое position, строка text)

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

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

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

void paste()

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

void redo()

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

void remove(целое start, целое end)

Удаляет фрагмент текста между позициями start и end.

Этот метод был добавлен в QtQuick.Controls 1.4.

void select(целое start, целое end)

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

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

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

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

void selectAll()

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

void selectWord()

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

void undo()

Отменяет последнюю операцию, если отмена доступна. 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-controls-textfield.html

Spec-Zone.ru

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