Spec-Zone.ru › Qt 5.15

Тип 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 : string
  • inputMethodComposing : bool
  • inputMethodHints : перечисление
  • length : int
  • maximumLength : int
  • menu : Компонент
  • placeholderText : string
  • readOnly : bool
  • selectByMouse : bool
  • selectedText : string
  • selectionEnd : int
  • selectionStart : int
  • text : string
  • 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 - Поле редактирования не закрывает программную клавиатуру при нажатии клавиш Возврат или Ввод (начиная с 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.

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

editingFinished()

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

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

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

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

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

void copy()

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

void cut()

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

void deselect()

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

string getText(int start, int end)

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

void insert(int position, string text)

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

bool isRightToLeft(int start, int end)

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

void paste()

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

void redo()

Выполняет последнюю операцию, если она доступна по canRedo.

void remove(int start, int end)

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

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

void select(int start, int end)

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

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

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

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

void selectAll()

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

void selectWord()

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

void undo()

Отменяет последнюю операцию, если она доступна по canUndo. undo() снимает выделение и обновляет позицию начала выделения до текущей позиции курсора.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.15/qml-qtquick-controls-textfield.html

Spec-Zone.ru

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