Класс QInputMethod
Класс QInputMethod предоставляет доступ к активному методу ввода текста. Подробнее...
| Заголовок: | #include <QInputMethod> |
| qmake: | QT += gui |
| Наследует: | QObject |
Типы публичного доступа
| перечисление | Action { Click, ContextMenu } |
Свойства
|
|
- 1 свойство унаследовано от QObject
Публичные функции
| QRectF | anchorRectangle() const |
| QRectF | cursorRectangle() const |
| Qt::LayoutDirection | inputDirection() const |
| QRectF | inputItemClipRectangle() const |
| QRectF | inputItemRectangle() const |
| QTransform | inputItemTransform() const |
| bool | isAnimating() const |
| bool | isVisible() const |
| QRectF | keyboardRectangle() const |
| QLocale | locale() const |
| void | setInputItemRectangle(const QRectF &rect) |
| void | setInputItemTransform(const QTransform &transform) |
| void | setVisible(bool visible) |
- 31 функция унаследована от QObject
Публичные слоты
| void | commit() |
| void | hide() |
| void | invokeAction(QInputMethod::Action a, int cursorPosition) |
| void | reset() |
| void | show() |
| void | update(Qt::InputMethodQueries queries) |
- 1 public slot унаследован от QObject
Сигналы
| void | anchorRectangleChanged() |
| void | animatingChanged() |
| void | cursorRectangleChanged() |
| void | inputDirectionChanged(Qt::LayoutDirection newDirection) |
| void | inputItemClipRectangleChanged() |
| void | keyboardRectangleChanged() |
| void | localeChanged() |
| void | visibleChanged() |
- 2 сигнала унаследованы от QObject
Статические публичные члены
| QVariant | queryFocusObject(Qt::InputMethodQuery query, QVariant argument) |
| const QMetaObject | staticMetaObject |
- 9 статических публичных членов унаследованы от QObject
Дополнительные унаследованные члены
- 9 защищенных функций унаследованы от QObject
Подробное описание
Класс QInputMethod предоставляет доступ к активному методу ввода текста.
QInputMethod используется редакторами текста для интеграции с платформными методами ввода текста, а также приложениями для запроса различных сведений о методах ввода текста, таких как видимость виртуальной клавиатуры и размеры клавиатуры.
Qt Quick также предоставляет доступ к QInputMethod в QML через глобальный объект Qt в качестве свойства Qt.inputMethod.
Документация по типам членов
перечисление QInputMethod::Action
Указывает тип действия, выполненного пользователем.
| Константа | Значение | Описание |
|---|---|---|
QInputMethod::Click |
0 |
Обычный щелчок/тап |
QInputMethod::ContextMenu |
1 |
Щелчок/тап контекстного меню (например, правой кнопкой мыши или удерживанием нажатия) |
См. также invokeAction().
Документация свойств
anchorRectangle : const QRectF
Прямоугольник якоря элемента ввода в координатах окна.
Прямоугольник якоря часто используется различными средствами редактирования текста, например, всплывающими подсказками предсказания текста, для отслеживания выделенного текста.
Функции доступа:
| QRectF | anchorRectangle() const |
Сигнал уведомления:
| void | anchorRectangleChanged() |
animating : const bool
Истинно, когда виртуальная клавиатура открывается или закрывается.
Анимация ложна, когда клавиатура полностью открыта или закрыта. Когда animating является true и visibility является true, клавиатура открывается. Когда animating является true и visibility ложно, клавиатура закрывается.
Функции доступа:
| bool | isAnimating() const |
Сигнал уведомления:
| void | animatingChanged() |
cursorRectangle : const QRectF
Прямоугольник курсора элемента ввода в координатах окна.
Прямоугольник курсора часто используется различными средствами редактирования текста, например, всплывающими подсказками предсказания текста, для отслеживания вводимого текста.
Функции доступа:
| QRectF | cursorRectangle() const |
Сигнал уведомления:
| void | cursorRectangleChanged() |
inputDirection : const Qt::LayoutDirection
Текущее направление ввода.
Функции доступа:
| Qt::LayoutDirection | inputDirection() const |
Сигнал уведомления:
| void | inputDirectionChanged(Qt::LayoutDirection newDirection) |
inputItemClipRectangle : const QRectF
Обрезанный прямоугольник элемента ввода в координатах окна.
Обрезанный прямоугольник элемента ввода часто используется различными методами ввода для определения доступной площади экрана для метода ввода (например, виртуальной клавиатуры).
Функции доступа:
| QRectF | inputItemClipRectangle() const |
Сигнал уведомления:
| void | inputItemClipRectangleChanged() |
keyboardRectangle : const QRectF
Геометрия виртуальной клавиатуры в координатах окна.
Может быть пустым прямоугольником, если невозможно определить геометрию клавиатуры. Это происходит для плавающей клавиатуры на Android.
Функции доступа:
| QRectF | keyboardRectangle() const |
Сигнал уведомления:
| void | keyboardRectangleChanged() |
locale : const QLocale
Текущий языковой стандарт ввода.
Функции доступа:
| QLocale | locale() const |
Сигнал уведомления:
| void | localeChanged() |
visible : const bool
Видимость виртуальной клавиатуры на экране.
Видимость метода ввода остаётся ложной для устройств без виртуальных клавиатур.
Функции доступа:
| bool | isVisible() const |
Сигнал уведомления:
| void | visibleChanged() |
Документация по членам-функциям
[slot] void QInputMethod::commit()
Выполняет текущее слово, набираемое пользователем, в редакторе. Функция в основном нужна методам ввода с функциями предсказания текста и методам, где сценарий, используемый для ввода символов, отличается от сценария, который фактически добавляется в редактор. Любой вид действия, который прерывает набор текста, должен очистить состояние набора текста, вызвав функцию commit(), например, когда курсор перемещается в другое место.
[slot] void QInputMethod::hide()
Запрашивает закрытие виртуальной клавиатуры.
Обычно приложениям не нужно вызывать эту функцию; клавиатура должна автоматически закрываться, когда текстовый редактор теряет фокус, например, при закрытии родительского представления.
QRectF QInputMethod::inputItemRectangle() const
Возвращает геометрию элемента ввода в координатах элемента ввода.
Функция была добавлена в Qt 5.1.
См. также setInputItemRectangle().
QTransform QInputMethod::inputItemTransform() const
Возвращает преобразование от координат элемента ввода к координатам окна.
См. также setInputItemTransform().
[slot] void QInputMethod::invokeAction(QInputMethod::Action a, int cursorPosition)
Вызывается элементом ввода, когда слово, которое в данный момент набирается, нажимается пользователем, как указано действием a и заданным cursorPosition. Методы ввода часто используют эту информацию, чтобы предложить пользователю больше вариантов слов.
[static] QVariant QInputMethod::queryFocusObject(Qt::InputMethodQuery query, QVariant argument)
Отправляет query текущему объекту фокуса с параметрами argument и возвращает результат.
[slot] void QInputMethod::reset()
Сбрасывает состояние метода ввода. Например, текстовый редактор обычно вызывает этот метод перед вставкой текста, чтобы подготовить виджет к приёму текста.
Метод ввода автоматически сбрасывается при изменении фокусированного редактора.
void QInputMethod::setInputItemRectangle(const QRectF &rect)
Устанавливает геометрию элемента ввода в rect в координатах элемента ввода. Это необходимо обновлять фокусированному окну, например QQuickCanvas, всякий раз, когда элемент перемещается внутри сцены или фокус меняется.
Функция была добавлена в Qt 5.1.
См. также inputItemRectangle().
void QInputMethod::setInputItemTransform(const QTransform &transform)
Устанавливает преобразование от координат элемента ввода к координатам окна в transform. Преобразование элемента необходимо обновлять фокусированному окну, например QQuickCanvas, каждый раз, когда элемент перемещается внутри сцены.
См. также inputItemTransform().
void QInputMethod::setVisible(bool visible)
Управляет видимостью клавиатуры. Эквивалентно вызову show() (если visible истинно) или hide() (если visible ложно).
См. также isVisible(), show() и hide().
[slot] void QInputMethod::show()
Запрашивает открытие виртуальной клавиатуры. Если платформа не предоставляет виртуальную клавиатуру, видимость остаётся ложной.
Обычно приложениям не нужно вызывать эту функцию; клавиатура должна автоматически открываться, когда текстовый редактор получает фокус.
[slot] void QInputMethod::update(Qt::InputMethodQueries queries)
Вызывается элементом ввода, чтобы уведомить платформенные методы ввода о изменениях состояния атрибутов запроса метода ввода редактора. При вызове функции необходимо использовать параметр queries, чтобы указать, что изменилось, что позволит методу ввода запрашивать интересующие его атрибуты с помощью QInputMethodQueryEvent.
В частности, важно вызывать update всякий раз, когда меняется позиция курсора, так как это часто приводит к изменению других атрибутов запроса, таких как окружающий текст и выделенный текст. Атрибуты, которые часто изменяются вместе с позицией курсора, объединены в значение Qt::ImQueryInput для удобства.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.12/qinputmethod.html