Класс QInputMethod
Класс QInputMethod предоставляет доступ к активному методу ввода текста. Подробнее...
| Заголовок: | #include <QInputMethod> |
| qmake: | QT += gui |
| Наследует: | QObject |
Типы
| Перечисление | Action { Click, ContextMenu } |
Свойства
|
|
- 1 свойство унаследовано от QObject
Открытые функции
| QRectF | cursorRectangle() const |
| Qt::LayoutDirection | inputDirection() 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(Action a, int cursorPosition) |
| void | reset() |
| void | show() |
| void | update(Qt::InputMethodQueries queries) |
- 1 открытый слот унаследован от QObject
Сигналы
| void | animatingChanged() |
| void | cursorRectangleChanged() |
| void | inputDirectionChanged(Qt::LayoutDirection newDirection) |
| void | keyboardRectangleChanged() |
| void | localeChanged() |
| void | visibleChanged() |
- 2 сигнала унаследованы от QObject
Статические открытые члены
| QVariant | queryFocusObject(Qt::InputMethodQuery query, QVariant argument) |
- 11 статических открытых членов унаследованы от QObject
Дополнительные унаследованные члены
- 9 защищенных функций унаследованы от QObject
Подробное описание
Класс QInputMethod предоставляет доступ к активному методу ввода текста.
QInputMethod используется редакторами текста для интеграции с платформами методов ввода текста и чаще приложениями-представлениями для запроса различных сведений, связанных с методами ввода текста, таких как видимость виртуальной клавиатуры и размеры клавиатуры.
Qt Quick также предоставляет доступ к QInputMethod в QML через глобальный объект Qt в качестве свойства Qt.inputMethod.
Документация по типам членов
Перечисление QInputMethod::Action
Указывает вид действия, выполненного пользователем.
| Константа | Значение | Описание |
|---|---|---|
QInputMethod::Click |
0 |
Обычное нажатие/тап |
QInputMethod::ContextMenu |
1 |
Нажатие/тап контекстного меню (например, правой кнопкой мыши или удержанием нажатой кнопки тачскрина) |
См. также invokeAction().
Документация свойств
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) |
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(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.
В частности, важно вызывать update всякий раз, когда меняется позиция курсора, так как это часто приводит к изменению и других атрибутов запросов, таких как окружающий текст и выделение текста. Атрибуты, которые часто изменяются вместе с позицией курсора, объединены в значение Qt::ImQueryInput для удобства.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/archives/qt-5.6/qinputmethod.html