Заголовок shellhandwriting.h
Включает рукописный ввод с помощью пера на любом элементе управления редактированием текста или рядом с ним без предварительного задания фокуса на элементе управления. Система определяет намерение, определяет целевой объект ввода, отрисовывает росчерки пера, распознает рукописный ввод как текст (или жест для изменения текста), предлагает кандидаты текста, если они доступны, и вставляет новый или измененный текст в поле редактирования элемента управления.
Этот заголовок используется рукописным вводом. Дополнительные сведения см. в разделе:
Для поддержки функций ShellHandwriting используются платформа служб текста (TSF) и модель автоматизации пользовательского интерфейса (UIA).
Ниже описан базовый процесс, используемый для функций ShellHandwriting.
- Отказ от определения: Определите, поддерживает ли приложение shellHandwriting. Обычно это приложения, которые не имеют надежных реализаций модель автоматизации пользовательского интерфейса (UIA) или с пользовательской обработкой рукописного ввода.
- Определение намерения. Если приложение поддерживает shellHandwriting, система определяет, следует ли передавать входные данные пера вниз в приложение или использовать для рукописного ввода.
- Определение касания: Если для рукописного ввода следует использовать ввод с помощью пера, проверьте, был ли он получен интерактивным элементом управления (например, кнопкой, которая будет иметь приоритет) и может ли элемент управления, способный получать текст (Edit, ComboBox или Document types), который включен, а не только для чтения, и может ли он принимать фокус клавиатуры.
- Определение целевого объекта: Если входные данные можно использовать для рукописного ввода, вокруг части входных данных создается ограничивающий прямоугольник, чтобы определить, каким элементом управления редактированием лучше всего подходит для получения результатов распознавания рукописного ввода (определение целевого объекта).
- Окончательное определение: При определении целевого элемента управления редактированием и получении фокуса различные другие индикаторы контекста (например, входные область, язык, существующие ограничивающие текст прямоугольники) используются для подтверждения правильности до копирования результатов распознавания рукописного ввода в элемент управления.
shellhandwriting.h содержит следующие программные интерфейсы:
Интерфейсы
IHandwritingInputRoutingCallback Обеспечивает поддержку маршрутизации входных данных для отделения потока системы обработки ввода пером от потока пользовательского интерфейса целевого объекта ввода. |
ITfDetermineProximateHandwritingTargetArgs Предоставляет поведение ответа рукописного ввода и сведения о непосредственном целевом объекте. |
ITfFocusHandwritingTargetArgs Предоставляет поведение ответа рукописного ввода и сведения о целевом объекте. |
ITfHandwriting Поддерживает ввод рукописного ввода с помощью пера для любого ближайшего поля редактирования без необходимости предварительного задания фокуса на элемент управления редактированием. Отрисовываются росчерки пера, выполняется распознавание рукописного ввода (в виде текста или жеста редактирования), а текст вводится в поле редактирования. |
ITfHandwritingRequest Приложения должны использовать этот интерфейс для уведомления системы о том, что они оценили входные данные пера, выполненные после запроса рукописного ввода. |
ITfHandwritingSink Поддерживает возможность задания пользовательского поведения рукописного ввода до установки фокуса на поле редактирования. |
Функции
GetHandwritingStrokeIdForPointer Извлекает уникальный идентификатор росчерка пера, связанного с указанным идентификатором указателя. |
RegisterHandwritingInputRoutingCallback |
Перечисления
TfHandwritingFocusTargetResponse Указывает, как клиент, реализующий интерфейс IHandwritingInputRoutingCallback, реагирует при вызове функции FocusHandwritingTarget. |
TfHandwritingState Указывает, как система обрабатывает рукописный текст. |
TfInputEvaluation Указывает способ распознавания входных данных пером. |
TfProximateHandwritingTargetResponse Указывает поддерживаемое поведение рукописного ввода на основе ближайшего расположения целевого объекта рукописного ввода. |