Класс 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) |
- 34 функции публичного доступа унаследованы от QObject
Свойства публичного доступа
| void | commit() |
| void | hide() |
| void | invokeAction(QInputMethod::Action a, int cursorPosition) |
| void | reset() |
| void | show() |
| void | update(Qt::InputMethodQueries queries) |
- 1 свойство публичного доступа унаследовано от 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) |
- 10 статических членов публичного доступа унаследовано от QObject
Дополнительные унаследованные члены
- 1 публичная переменная унаследована от QObject
- 9 защищенных функций унаследовано от QObject
- 2 защищенных переменных унаследовано от 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 ложно, когда клавиатура полностью открыта или закрыта. Когда 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 true) или hide() (если visible false).
См. также isVisible(), show() и hide().
[slot] void QInputMethod::show()
Запрашивает открытие виртуальной клавиатуры. Если платформа не предоставляет виртуальную клавиатуру, видимость остаётся ложной.
Приложения обычно не должны вызывать эту функцию, клавиатура должна автоматически открываться, когда текстовый редактор получает фокус.
[slot] void QInputMethod::update(Qt::InputMethodQueries queries)
Вызывается элементом ввода, чтобы уведомить платформенные методы ввода о изменениях состояния атрибутов запроса метода ввода редактора. При вызове функции параметр queries должен использоваться для указания изменений, которые метод ввода может использовать для запросов атрибутов, которые его интересуют QInputMethodQueryEvent.
В частности, вызов обновления всякий раз, когда изменяется позиция курсора, важен, поскольку это часто приводит к изменению и других атрибутов запроса, таких как окружающий текст и выделенный текст. Атрибуты, которые часто изменяются вместе с позицией курсора, объединены в значение Qt::ImQueryInput для удобства.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/archives/qt-5.11/qinputmethod.html