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 方法 |
備註
若要搭配無視窗控制項使用此介面,應用程式有兩個選項。
- 讓應用程式 TSF 感知: TSF 感知應用程式必須實作 ITextStoreACP 或 ITfContextOwner ,才能取得 ITfInputScope 的指標。
- SetInputScopes 不建議這麼做,但如果應用程式不是 TSF 感知,則沒有任何其他方式可維護輸入範圍與應用程式之間的關聯。 在此情況下,每當焦點在無視窗控件之間變更時,應用程式都必須呼叫 SetInputScopes。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows XP [傳統型應用程式 |UWP 應用程式] |
最低支援的伺服器 | Windows Server 2003 [傳統型應用程式 |UWP 應用程式] |
目標平台 | Windows |
標頭 | inputscope.h |