共用方式為


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 值的指標,這個值會接收取得的選取範圍數目。

傳回值

這個方法可以傳回其中一個值。

描述
S_OK
此方法成功。
TF_E_NOSELECTION
檔沒有選取範圍。
TF_E_NOLOCK
ec中的 Cookie 無效。
TF_E_DISCONNECTED
內容不在檔堆疊上。
E_INVALIDARG
一或多個參數無效。
E_OUTOFMEMORY
發生記憶體配置失敗。

備註

選取範圍是醒目提示的文字範圍,如果範圍是空的,則為插入點,可識別檔中的使用者焦點區域。

如果這個方法成功,呼叫端必須釋放取得之所有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 oEditSessionTF_SELECTION 結構ITfCoNtext::SetSelection