Класс QVirtualKeyboardInputEngine
Класс InputEngine предоставляет движок ввода, поддерживающий интеграцию C++ и QML. Подробнее...
| Заголовок: | #include <QVirtualKeyboardInputEngine> |
| CMake: | find_package(Qt6 COMPONENTS VirtualKeyboard REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::VirtualKeyboard) |
| qmake: | QT += virtualkeyboard |
| Инициализируется из: | InputEngine |
| Наследует: | QObject |
Типы публичного интерфейса
| Перечисление | InputMode { Latin, Numeric, Dialable, Pinyin, Cangjie, …, Romaji } |
| Перечисление | PatternRecognitionMode { None, PatternRecognitionDisabled, Handwriting, HandwritingRecoginition } |
| Перечисление | ReselectFlag { WordBeforeCursor, WordAfterCursor, WordAtCursor } |
| Флаги | ReselectFlags |
| Перечисление | TextCase { Lower, Upper } |
Свойства
|
|
Публичные функции
| Qt::Key | активныйКлюч() const |
| QVirtualKeyboardInputContext * | входнойКонтекст() const |
| QVirtualKeyboardAbstractInputMethod * | входнойМетод() const |
| QVirtualKeyboardInputEngine::InputMode | режимВвода() const |
| QList<int> | режимыВвода() const |
| QList<int> | режимыРаспознаванияОбразцов() const |
| Qt::Key | предыдущийКлюч() const |
| bool | повторныйВыбор(int cursorPosition, const QVirtualKeyboardInputEngine::ReselectFlags &reselectFlags) |
| void | установитьВводМетод(QVirtualKeyboardAbstractInputMethod *inputMethod) |
| void | установитьРежимВвода(QVirtualKeyboardInputEngine::InputMode inputMode) |
| QVirtualKeyboardTrace * | началоТрейса(int traceId, QVirtualKeyboardInputEngine::PatternRecognitionMode patternRecognitionMode, const QVariantMap &traceCaptureDeviceInfo, const QVariantMap &traceScreenInfo) |
| bool | окончаниеТрейса(QVirtualKeyboardTrace *trace) |
| void | отменаВиртуальнойКлавиши() |
| bool | щелчокВиртуальнойКлавиши(Qt::Key key, const QString &text, Qt::KeyboardModifiers modifiers) |
| bool | нажатиеВиртуальнойКлавиши(Qt::Key key, const QString &text, Qt::KeyboardModifiers modifiers, bool repeat) |
| bool | отпусканиеВиртуальнойКлавиши(Qt::Key key, const QString &text, Qt::KeyboardModifiers modifiers) |
| QVirtualKeyboardSelectionListModel * | списокПредложенийСлов() const |
| bool | видимостьСпискаПредложенийСлов() const |
Сигналы
| void | изменилсяАктивныйКлюч(Qt::Key key) |
| void | изменилсяВводМетод() |
| void | сбросВводМетод() |
| void | обновлениеВводМетод() |
| void | изменилсяРежимВвода() |
| void | изменилисьРежимыВвода() |
| void | изменилисьРежимыРаспознаванияОбразцов() |
| void | изменилсяПредыдущийКлюч(Qt::Key key) |
| void | щелчокВиртуальнойКлавиши(Qt::Key key, const QString &text, Qt::KeyboardModifiers modifiers, bool isAutoRepeat) |
| void | изменилсяСписокПредложенийСлов() |
| void | измениласьВидимостьСпискаПредложенийСлов() |
Подробное описание
Движок ввода отвечает за маршрутизацию событий ввода к методам ввода. Фактическая логика ввода реализуется методами ввода.
Движок ввода также включает в себя метод ввода по умолчанию, который обрабатывает стандартную обработку, если активный метод ввода не обрабатывает событие.
Документация типов членов
перечисление QVirtualKeyboardInputEngine::InputMode
Это перечисление определяет режим ввода для метода ввода.
| Постоянная | Значение | Описание |
|---|---|---|
QVirtualKeyboardInputEngine::InputMode::Latin |
0 |
По умолчанию режим ввода для латинского текста. |
QVirtualKeyboardInputEngine::InputMode::Numeric |
1 |
Разрешен только числовой ввод. |
QVirtualKeyboardInputEngine::InputMode::Dialable |
2 |
Разрешен только набираемый ввод. |
QVirtualKeyboardInputEngine::InputMode::Pinyin |
3 |
Режим ввода Пинъинь для китайского языка. |
QVirtualKeyboardInputEngine::InputMode::Cangjie |
4 |
Режим ввода Цанцзе для китайского языка. |
QVirtualKeyboardInputEngine::InputMode::Zhuyin |
5 |
Режим ввода Жуйинь для китайского языка. |
QVirtualKeyboardInputEngine::InputMode::Hangul |
6 |
Режим ввода Хангуль для корейского языка. |
QVirtualKeyboardInputEngine::InputMode::Hiragana |
7 |
Режим ввода Хирагана для японского языка. |
QVirtualKeyboardInputEngine::InputMode::Katakana |
8 |
Режим ввода Катакана для японского языка. |
QVirtualKeyboardInputEngine::InputMode::FullwidthLatin |
9 |
Режим ввода латинских символов в полноширинном формате для языков Восточной Азии. |
QVirtualKeyboardInputEngine::InputMode::Greek |
10 |
Режим ввода греческого языка. |
QVirtualKeyboardInputEngine::InputMode::Cyrillic |
11 |
Режим ввода кириллицы. |
QVirtualKeyboardInputEngine::InputMode::Arabic |
12 |
Режим ввода арабского языка. |
QVirtualKeyboardInputEngine::InputMode::Hebrew |
13 |
Режим ввода иврита. |
QVirtualKeyboardInputEngine::InputMode::ChineseHandwriting |
14 |
Режим рукописного ввода для китайского языка. |
QVirtualKeyboardInputEngine::InputMode::JapaneseHandwriting |
15 |
Режим рукописного ввода для японского языка. |
QVirtualKeyboardInputEngine::InputMode::KoreanHandwriting |
16 |
Режим рукописного ввода для корейского языка. |
QVirtualKeyboardInputEngine::InputMode::Thai |
17 |
Режим ввода тайского языка. |
QVirtualKeyboardInputEngine::InputMode::Stroke |
18 |
Режим ввода штрихов для китайского языка. |
QVirtualKeyboardInputEngine::InputMode::Romaji |
19 |
Режим ввода ромадзи для японского языка. |
перечисление QVirtualKeyboardInputEngine::PatternRecognitionMode
Это перечисление определяет режим ввода для метода ввода.
| Постоянная | Значение | Описание |
|---|---|---|
QVirtualKeyboardInputEngine::PatternRecognitionMode::None |
0 |
Распознавание по образцам недоступно. |
QVirtualKeyboardInputEngine::PatternRecognitionMode::PatternRecognitionDisabled |
None |
obsolete Используйте PatternRecognitionMode::None |
QVirtualKeyboardInputEngine::PatternRecognitionMode::Handwriting |
1 |
Режим распознавания по образцам для распознавания рукописного ввода. |
QVirtualKeyboardInputEngine::PatternRecognitionMode::HandwritingRecoginition |
Handwriting |
obsolete Используйте PatternRecognitionMode::Handwriting |
перечисление QVirtualKeyboardInputEngine::ReselectFlagфлаги QVirtualKeyboardInputEngine::ReselectFlags
Это перечисление определяет правила для повторного выбора слов.
| Постоянная | Значение | Описание |
|---|---|---|
QVirtualKeyboardInputEngine::ReselectFlag::WordBeforeCursor |
0x1 |
Активировать слово перед курсором. При использовании этого флага, слово должно заканчиваться точно на курсоре. |
QVirtualKeyboardInputEngine::ReselectFlag::WordAfterCursor |
0x2 |
Активировать слово после курсора. При использовании этого флага, слово должно начинаться точно на курсоре. |
QVirtualKeyboardInputEngine::ReselectFlag::WordAtCursor |
WordBeforeCursor | WordAfterCursor |
Активировать слово на курсоре. Этот флаг является комбинацией вышеперечисленных флагов, за исключением того, что слово не может начинаться или заканчиваться на курсоре. |
Тип ReselectFlags является псевдонимом для QFlags<ReselectFlag>. Он хранит комбинацию значений ReselectFlag через операцию OR.
перечисление QVirtualKeyboardInputEngine::TextCase
Это перечисление определяет регистр текста для метода ввода.
| Постоянная | Значение | Описание |
|---|---|---|
QVirtualKeyboardInputEngine::TextCase::Lower |
0 |
Текст в нижнем регистре. |
QVirtualKeyboardInputEngine::TextCase::Upper |
1 |
Текст в верхнем регистре. |
Документация свойств
[read-only] activeKey : const Qt::Key
Это свойство содержит активную клавишу.
В данный момент нажатая клавиша.
Функции доступа:
| Qt::Key | activeKey() const |
Сигнал уведомления:
| void | activeKeyChanged(Qt::Key key) |
inputMethod : QVirtualKeyboardAbstractInputMethod*
Это свойство содержит активный метод ввода.
Используйте это свойство для активации метода ввода или для отслеживания изменений активного метода ввода.
Функции доступа:
| QVirtualKeyboardAbstractInputMethod * | inputMethod() const |
| void | setInputMethod(QVirtualKeyboardAbstractInputMethod *inputMethod) |
Сигнал уведомления:
| void | inputMethodChanged() |
inputMode : InputMode
Это свойство содержит текущий режим ввода.
Используйте это свойство для получения или установки текущего режима ввода. InputEngine::inputModes предоставляет список допустимых режимов ввода для текущего метода ввода и языка.
Функции доступа:
| QVirtualKeyboardInputEngine::InputMode | inputMode() const |
| void | setInputMode(QVirtualKeyboardInputEngine::InputMode inputMode) |
Сигнал уведомления:
| void | inputModeChanged() |
[read-only] inputModes : const QList<int>
Это свойство содержит доступные режимы ввода для активного метода ввода.
Список доступных режимов ввода зависит от метода ввода и языка. Это свойство обновляется при изменении любого из этих зависимостей.
Функции доступа:
| QList<int> | inputModes() const |
Сигнал уведомления:
| void | inputModesChanged() |
[read-only, since QtQuick.VirtualKeyboard 2.0] patternRecognitionModes : const QList<int>
Это свойство содержит список доступных режимов распознавания шаблонов.
Список доступных режимов распознавания шаблонов.
Это свойство было добавлено в QtQuick.VirtualKeyboard 2.0.
Функции доступа:
| QList<int> | patternRecognitionModes() const |
Сигнал уведомления:
| void | patternRecognitionModesChanged() |
[read-only] previousKey : const Qt::Key
Это свойство содержит предыдущую активную клавишу.
Предыдущая нажатая клавиша.
Функции доступа:
| Qt::Key | previousKey() const |
Сигнал уведомления:
| void | previousKeyChanged(Qt::Key key) |
[read-only] wordCandidateListModel : QVirtualKeyboardSelectionListModel* const
модель списка для списка кандидатов слов.
Используйте это свойство для доступа к модели списка кандидатов слов.
Функции доступа:
| QVirtualKeyboardSelectionListModel * | wordCandidateListModel() const |
Сигнал уведомления:
| void | wordCandidateListModelChanged() |
[read-only] wordCandidateListVisibleHint : const bool
метка видимости для списка кандидатов слов.
Используйте это свойство для проверки, следует ли отображать список кандидатов слов в пользовательском интерфейсе.
Функции доступа:
| bool | wordCandidateListVisibleHint() const |
Сигнал уведомления:
| void | wordCandidateListVisibleHintChanged() |
Документация функций-членов
[signal] void QVirtualKeyboardInputEngine::activeKeyChanged(Qt::Key key)
Указывает, что активная клавиша key изменилась.
Примечание: Сигнал уведомления для свойства activeKey.
[signal] void QVirtualKeyboardInputEngine::inputMethodChanged()
Указывает, что метод ввода изменился.
Примечание: Сигнал уведомления для свойства inputMethod.
[signal] void QVirtualKeyboardInputEngine::inputMethodReset()
Вызывается, когда метод ввода должен быть сброшен.
Примечание: Этот сигнал автоматически подключается к QVirtualKeyboardAbstractInputMethod::reset() и InputMethod::reset() при активации метода ввода.
[signal] void QVirtualKeyboardInputEngine::inputMethodUpdate()
Примечание: Этот сигнал автоматически подключается к QVirtualKeyboardAbstractInputMethod::update() и InputMethod::update() при активации метода ввода.
[signal] void QVirtualKeyboardInputEngine::inputModeChanged()
Указывает, что режим ввода изменился.
Примечание: Сигнал уведомления для свойства inputMode.
[signal] void QVirtualKeyboardInputEngine::inputModesChanged()
Указывает, что доступные режимы ввода изменились.
Примечание: Сигнал уведомления для свойства inputModes.
[signal, since QtQuick.VirtualKeyboard 2.0] void QVirtualKeyboardInputEngine::patternRecognitionModesChanged()
Указывает, что доступные режимы распознавания шаблонов изменились.
Примечание: Сигнал уведомления для свойства patternRecognitionModes.
Эта функция была добавлена в QtQuick.VirtualKeyboard 2.0.
[signal] void QVirtualKeyboardInputEngine::previousKeyChanged(Qt::Key key)
Указывает, что предыдущая клавиша key изменилась.
Примечание: Сигнал уведомления для свойства previousKey.
[signal] void QVirtualKeyboardInputEngine::virtualKeyClicked(Qt::Key key, const QString &text, Qt::KeyboardModifiers modifiers, bool isAutoRepeat)
Указывает, что виртуальный ключ был нажат с заданным текстом и модификаторами. isAutoRepeat указывает, повторяется ли событие автоматически во время нажатия клавиши. Этот сигнал излучается после того, как метод ввода обработает событие нажатия клавиши.
Qt::Key QVirtualKeyboardInputEngine::activeKey() const
Возвращает активную клавишу в данный момент или Qt::Key_unknown, если активной клавиши нет.
Примечание: Функция-геттер для свойства activeKey.
QVirtualKeyboardInputContext *QVirtualKeyboardInputEngine::inputContext() const
Возвращает InputContext экземпляр, связанный с движком ввода.
QVirtualKeyboardAbstractInputMethod *QVirtualKeyboardInputEngine::inputMethod() const
Возвращает активный метод ввода.
Примечание: Функция-геттер для свойства inputMethod.
См. также setInputMethod().
QList<int> QVirtualKeyboardInputEngine::inputModes() const
Возвращает список доступных режимов ввода.
Примечание: Функция-геттер для свойства inputModes.
QList<int> QVirtualKeyboardInputEngine::patternRecognitionModes() const
Возвращает список поддерживаемых режимов распознавания шаблонов.
Примечание: Функция-геттер для свойства patternRecognitionModes.
Qt::Key QVirtualKeyboardInputEngine::previousKey() const
Возвращает предыдущую активную клавишу или Qt::Key_unknown, если активной клавиши не было.
Примечание: Функция-геттер для свойства previousKey.
[invokable, since QtQuick.VirtualKeyboard 2.0] bool QVirtualKeyboardInputEngine::reselect(int cursorPosition, const QVirtualKeyboardInputEngine::ReselectFlags &reselectFlags)
Эта функция пытается повторно выбрать слово, расположенное по cursorPosition. reselectFlags определяют правила выбора слова относительно позиции курсора.
Функция возвращает true , если слово было успешно выбрано повторно.
Примечание: Эта функция может вызываться через систему метаобъектов и из QML. См. Q_INVOKABLE.
Эта функция была добавлена в QtQuick.VirtualKeyboard 2.0.
void QVirtualKeyboardInputEngine::setInputMethod(QVirtualKeyboardAbstractInputMethod *inputMethod)
Устанавливает inputMethod в качестве активного метода ввода.
Примечание: Функция-сеттер для свойства inputMethod.
См. также inputMethod().
[invokable, since QtQuick.VirtualKeyboard 2.0] QVirtualKeyboardTrace *QVirtualKeyboardInputEngine::traceBegin(int traceId, QVirtualKeyboardInputEngine::PatternRecognitionMode patternRecognitionMode, const QVariantMap &traceCaptureDeviceInfo, const QVariantMap &traceScreenInfo)
Инициализирует трассировку взаимодействия с движком ввода.
Трассировка однозначно идентифицируется traceId. Движок ввода присвоит идентификатор объекту QVirtualKeyboardTrace, если метод ввода принимает событие.
patternRecognitionMode определяет режим распознавания, используемый для шаблона.
Если текущий метод ввода принимает событие, он возвращает объект QVirtualKeyboardTrace, связанный с этим взаимодействием. Если метод ввода отбрасывает событие, он возвращает значение NULL.
traceCaptureDeviceInfo предоставляет информацию об устройстве источника, а traceScreenInfo предоставляет информацию о контексте экрана.
По определению, объект QVirtualKeyboardTrace остается действительным до тех пор, пока не будет вызван метод traceEnd().
Взаимодействие трассировки завершается вызовом метода traceEnd().
Примечание: Эта функция может вызываться через систему метаобъектов и из QML. См. Q_INVOKABLE.
Эта функция была добавлена в QtQuick.VirtualKeyboard 2.0.
[invokable] bool QVirtualKeyboardInputEngine::traceEnd(QVirtualKeyboardTrace *trace)
Завершает взаимодействие трассировки с движком ввода.
Объект trace может быть удален в любой момент после вызова этой функции.
Функция возвращает true, если взаимодействие трассировки было принято (т.е. события касания не должны использоваться для других целей).
Примечание: Эта функция может вызываться через систему метаобъектов и из QML. См. Q_INVOKABLE.
[invokable] void QVirtualKeyboardInputEngine::virtualKeyCancel()
Возвращает состояние активной клавиши без излучения события нажатия клавиши. Этот метод полезен, когда пользователь отбрасывает текущую клавишу, и состояние клавиши нужно восстановить.
Примечание: Эта функция может вызываться через систему метаобъектов и из QML. См. Q_INVOKABLE.
[invokable] bool QVirtualKeyboardInputEngine::virtualKeyClick(Qt::Key key, const QString &text, Qt::KeyboardModifiers modifiers)
Отправляет событие нажатия клавиши для заданных key, text и modifiers. Возвращает true , если событие нажатия клавиши было принято движком ввода.
Примечание: Эта функция может вызываться через систему метаобъектов и из QML. См. Q_INVOKABLE.
[invokable] bool QVirtualKeyboardInputEngine::virtualKeyPress(Qt::Key key, const QString &text, Qt::KeyboardModifiers modifiers, bool repeat)
Вызывается слоем клавиатуры, чтобы указать, что key была нажата с заданным text и modifiers.
key устанавливается как активная клавиша (клавиша вниз). Фактическое событие нажатия клавиши срабатывает, когда клавиша отпускается методом virtualKeyRelease(). Событие нажатия клавиши может быть отброшено вызовом virtualKeyCancel().
Нажатие клавиши также запускает таймер повторения клавиши, если repeat равно true.
Возвращает true , если клавиша была принята этим движком ввода.
Примечание: Эта функция может вызываться через систему метаобъектов и из QML. См. Q_INVOKABLE.
См. также virtualKeyCancel() и virtualKeyRelease().
[invokable] bool QVirtualKeyboardInputEngine::virtualKeyRelease(Qt::Key key, const QString &text, Qt::KeyboardModifiers modifiers)
Отпускает клавишу key. Метод излучает событие нажатия клавиши для метода ввода, если событие не было сгенерировано повторяющимся таймером. text и modifiers передаются методу ввода.
Возвращает true , если клавиша была принята движком ввода.
Примечание: Эта функция может вызываться через систему метаобъектов и из QML. См. Q_INVOKABLE.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.1/qvirtualkeyboardinputengine.html