Spec-Zone.ru › Qt 6.0

Тип QML TextInput

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

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

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 : int
  • 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 : color
  • selectionColor : color
  • 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)
  • paste()
  • int positionAt(real x, real y, CursorPosition position)
  • 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.

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

[since 5.6] bottomPadding : real

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

Отдельные свойства отступов принимают значение свойства padding, если они не заданы явно. Например, если padding установлено в 4 и leftPadding в 8, 8 будет использоваться в качестве левого отступа.

Примечание: Если явно задана ширина или высота TextInput, необходимо убедиться, что она достаточно велика для размещения соответствующих значений отступа. Например: если topPadding и bottomPadding установлены в значение 10, но высота TextInput установлена только в 20, тексту не хватит вертикального пространства для рендеринга, и она будет обрезана.

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

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

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

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

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

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

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

acceptableInput : bool

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

activeFocusOnPress : bool

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

autoScroll : bool

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

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

canPaste : bool

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

canRedo : bool

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

canUndo : bool

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

color : цвет

Цвет текста.

contentHeight : real

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

contentWidth : real

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

cursorDelegate : Компонент

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

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

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

cursorPosition : int

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

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

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

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

cursorVisible : bool

Устанавливается в 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.

font.bold : bool

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

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

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

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

font.family : строка

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

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

[с 5.8] 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 : bool

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

[since 5.10] 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

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

[since 5.10] font.preferShaping : bool

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

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

TextInput { text: "Some text"; font.preferShaping: false }

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

font.strikeout : bool

Устанавливает, имеет ли шрифт стиль зачёркивания.

[since 5.6] font.styleName : string

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

Имя стиля нечувствительно к регистру. Если задано, шрифт будет сопоставляться с именем стиля вместо свойств шрифта font.weight, font.bold и font.italic.

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

font.underline : bool

Устанавливает, подчёркнут ли текст.

font.weight : int

Требуемый вес шрифта. Требуемый вес должен быть целым числом от 1 до 1000 или одним из предопределённых значений:

  • 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.

[since 5.8] overwriteMode : bool

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

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

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

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

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

passwordCharacter : string

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

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

[since 5.4] passwordMaskDelay : int

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

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

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

persistentSelection : bool

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

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

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

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

См. также displayText.

readOnly : bool

Устанавливает, может ли пользователь вводить данные, изменяющие содержимое TextInput.

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

renderType : enumeration

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

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

  • Text.QtRendering
  • Text.NativeRendering

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

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

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().

validator : Validator

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

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

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

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

wrapMode : enumeration

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

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

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

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

accepted()

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

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

[since 5.2] editingFinished()

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

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

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

[since 5.9] textEdited()

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

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

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

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

[since 5.7] clear()

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

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

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

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

copy()

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

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

cut()

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

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

deselect()

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

[since 5.4] 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 по позиции position.

isRightToLeft(int start, int end)

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

moveCursorSelection(int position, SelectionMode mode)

Перемещает курсор в позицию 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)

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

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

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

Постоянная Описание
TextInput.CursorBetweenCharacters Возвращает позицию между символами, ближайшую к x. Это значение по умолчанию.
TextInput.CursorOnCharacter Возвращает позицию перед символом, ближайшим к x.

rect positionToRectangle(int pos)

Эта функция принимает позицию символа 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/qt-6.0/qml-qtquick-textinput.html

Spec-Zone.ru

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