Поделиться через


Интерфейс ITfInputScope (inputscope.h)

Интерфейс ITfInputScope используется обработчиками текстового ввода для получения значения InputScope , представляющего контекст документа, связанный с окном. Входной область предоставляет правила для распознавания речи и рукописного ввода. Например, если для ввода адреса используется текстовое поле в форме, то входной область для этого текстового поля можно задать для распознавания и принятия только тех символов, которые допустимы для адреса.

Идентификатор интерфейса IID_ITfInputScope.

Контекст документа используется модулем распознавания речи и рукописного текста и задается обработчиком текстового ввода путем вызова метода SetInputScope . Приложение с поддержкой TSF не вызывает SetInputScope напрямую, а реализует ITextStoreACP или ITfContextOwner для получения указателя на ITfInputScope.

Чтобы получить указатель на интерфейс ITfInputScope , обработчик текстового ввода или приложение с поддержкой TSF вызывает ITfContext::GetAppProperty, передавая GUID_PROP_INPUTSCOPE и указатель на интерфейс ITFReadOnlyProperty , как показано в следующем примере.


extern const GUID GUID_PROP_INPUTSCOPE;
// 
// The TIP can call this to get the input scope of the document mgr. 
// 
HRESULT GetInputScope(ITfContext *pic, ITfRange *pRange, TfEditCookie ec, ITfInutScope **ppiscope){
    ITFReadOnlyProperty *prop;
    HRESULT hr;
    If (SUCCEEDED(hr = pic->GetAppProperty(GUID_PROP_INPUTSCOPE, &prop))
    {   VARIANT var;
        If (SUCCEEDED(hr = prop->GetValue(ec, pRange, &var)))
        {  hr = var.punkVal->QueryInterface(IID_ITfInputScope, (void **)ppiscope);
        }
        prop->Release();
    }
    return hr
}

Наследование

Интерфейс ITfInputScope наследуется от интерфейса IUnknown . ITfInputScope также имеет следующие типы элементов:

Методы

Интерфейс ITfInputScope содержит следующие методы.

 
ITfInputScope::GetInputScopes

Метод ITfInputScope::GetInputScopes
ITfInputScope::GetPhrase

Метод ITfInputScope::GetPhrase
ITfInputScope::GetRegularExpression

Метод ITfInputScope::GetRegularExpression
ITfInputScope::GetSRGS

Метод ITfInputScope::GetSRGS
ITfInputScope::GetXML

Метод ITfInputScope::GetXML

Комментарии

Чтобы использовать этот интерфейс с элементами управления без окон, у приложения есть два варианта.

  1. Сделайте приложение с поддержкой TSF: Приложение с поддержкой TSF должно реализовать ITextStoreACP или ITfContextOwner , чтобы получить указатель на ITfInputScope.
  2. SetInputScopes Это не рекомендуется, но если приложение не поддерживает TSF, нет другого способа сохранить связь между входными область и приложением. В этом случае приложение должно вызывать SetInputScopes при изменении фокуса между элементами управления без окна.

Требования

Требование Значение
Минимальная версия клиента Windows XP [классические приложения | Приложения UWP]
Минимальная версия сервера Windows Server 2003 [классические приложения | Приложения UWP]
Целевая платформа Windows
Header inputscope.h