Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Los procesadores de entrada de texto usan la interfaz ITfInputScope para obtener el valor InputScope que representa un contexto de documento asociado a una ventana. El ámbito de entrada proporciona reglas para ayudar al reconocimiento de voz y escritura a mano. Por ejemplo, si se usa un cuadro de texto en un formulario para escribir una dirección, el ámbito de entrada de ese cuadro de texto se puede establecer para reconocer y aceptar solo los caracteres que son válidos para una dirección.
El identificador de interfaz es IID_ITfInputScope.
El motor de reconocimiento de escritura a mano y voz usa el contexto del documento y lo establece un procesador de entrada de texto llamando al método SetInputScope . Una aplicación compatible con TSF no llama directamente a SetInputScope , sino que implementa ITextStoreACP o ITfContextOwner para obtener un puntero a ITfInputScope.
Para obtener el puntero a la interfaz ITfInputScope , el procesador de entrada de texto o la aplicación compatible con TSF llama a ITfContext::GetAppProperty, pasando GUID_PROP_INPUTSCOPE y un puntero a la interfaz ITFReadOnlyProperty , como en el ejemplo siguiente.
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
}
Herencia
La interfaz ITfInputScope hereda de la interfaz IUnknown . ITfInputScope también tiene estos tipos de miembros:
Métodos
La interfaz ITfInputScope tiene estos métodos.
|
ITfInputScope::GetInputScopes Método ITfInputScope::GetInputScopes |
|
ITfInputScope::GetPhrase Método ITfInputScope::GetPhrase |
|
ITfInputScope::GetRegularExpression Método ITfInputScope::GetRegularExpression |
|
ITfInputScope::GetSRGS Método ITfInputScope::GetSRGS |
|
ITfInputScope::GetXML Método ITfInputScope::GetXML |
Comentarios
Para usar esta interfaz con controles sin ventanas, una aplicación tiene dos opciones.
- Haga que la aplicación tenga en cuenta TSF: Una aplicación compatible con TSF debe implementar ITextStoreACP o ITfContextOwner para obtener un puntero a ITfInputScope.
- SetInputScopes Esto no se recomienda, pero si la aplicación no es compatible con TSF, no hay ninguna otra manera de mantener la asociación entre el ámbito de entrada y la aplicación. En este caso, la aplicación debe llamar a SetInputScopes siempre que el foco cambie entre los controles sin ventana.
Requisitos
| Requisito | Value |
|---|---|
| Cliente mínimo compatible | Windows XP [aplicaciones de escritorio | aplicaciones para UWP] |
| Servidor mínimo compatible | Windows Server 2003 [aplicaciones de escritorio | aplicaciones para UWP] |
| Plataforma de destino | Windows |
| Encabezado | inputscope.h |