iTfCoNtext::GetSelection 方法 (msctf.h)
取得檔中的選取範圍。
語法
HRESULT GetSelection(
[in] TfEditCookie ec,
[in] ULONG ulIndex,
[in] ULONG ulCount,
[out] TF_SELECTION *pSelection,
[out] ULONG *pcFetched
);
參數
[in] ec
包含可識別編輯會話的編輯 Cookie。 這是傳遞至 ITfEditSession::D oEditSession的值。
[in] ulIndex
指定要取得之第一個選取範圍之以零起始的索引。 使用 TF_DEFAULT_SELECTION 來取得預設選取範圍。 如果使用TF_DEFAULT_SELECTION,則只會取得一個選取範圍。
[in] ulCount
指定要取得的選取範圍數目上限。
[out] pSelection
TF_SELECTION結構的陣列,可接收每個選取範圍的資料。 陣列必須能夠保存至少 ulCount 元素。
[out] pcFetched
ULONG 值的指標,這個值會接收取得的選取範圍數目。
傳回值
這個方法可以傳回其中一個值。
值 | 描述 |
---|---|
|
此方法成功。 |
|
檔沒有選取範圍。 |
|
ec中的 Cookie 無效。 |
|
內容不在檔堆疊上。 |
|
一或多個參數無效。 |
|
發生記憶體配置失敗。 |
備註
選取範圍是醒目提示的文字範圍,如果範圍是空的,則為插入點,可識別檔中的使用者焦點區域。
如果這個方法成功,呼叫端必須釋放取得之所有TF_SELECTION結構的範圍成員。
一般而言,內容只支援單一選取專案。 不過,內容可以支援多個同時選取專案。 這個方法可用來取得多個選取專案。
範例
HRESULT hr;
TF_SELECTION tfSel;
ULONG uFetched;
//Obtain the default selection.
hr = pContext->GetSelection(ec, TF_DEFAULT_SELECTION, 1, &tfSel, &uFetched);
if(SUCCEEDED(hr) && (uFetched > 0))
{
//Work with the selection.
//Release the selection range object.
tfSel.range->Release();
}
需求
最低支援的用戶端 | Windows 2000 專業版 [傳統型應用程式 |UWP 應用程式] |
最低支援的伺服器 | Windows 2000 Server [傳統型應用程式 |UWP 應用程式] |
目標平台 | Windows |
標頭 | msctf.h |
Dll | Msctf.dll |
可轉散發套件 | Windows 2000 專業版上的 TSF 1.0 |
另請參閱
ITfCoNtext 介面、 ITfEditSession::D oEditSession、 TF_SELECTION 結構、 ITfCoNtext::SetSelection