ITfRange::AdjustForInsert 方法 (msctf.h)
ITfRange::AdjustForInsert 方法會展開或合約文字範圍,以調整文字插入。
語法
HRESULT AdjustForInsert(
[in] TfEditCookie ec,
[in] ULONG cchInsert,
[out] BOOL *pfInsertOk
);
參數
[in] ec
編輯從 ITfDocumentMgr::CreateContext 或 ITfEditSession::D oEditSession 取得的 Cookie。
[in] cchInsert
插入文字的字元計數。 此計數用於 ITfRange::SetText 的 futurecall。 如果字元計數未知,可以使用 0。
[out] pfInsertOk
旗標的指標,指出內容擁有者將接受 (TRUE) 或拒絕插入) (FALSE 。
傳回值
這個方法可以傳回下列其中一個值。
值 | 描述 |
---|---|
|
此方法成功。 |
|
方法失敗。 |
|
一或多個參數無效。 |
|
應用程式無法取代選取範圍。 |
|
ec 參數中的值是無效的 Cookie,或呼叫端沒有唯讀鎖定。 |
備註
這個方法應該用來準備範圍,以在編輯開始之前起始新的組合。 只有當文字未插入目前選取範圍時,才應該使用它。 ITFInsertAtSelection:InsertTextAtSelection 或 ITfInsertAtSelection::InsertEmbeddedAtSelection 是當文字插入目前選取範圍時使用的正確方法。
內容擁有者可以使用此方法來保留行為,並協助維護一致的用戶體驗。 例如,內容中的特定字元或物件可以從修改中保留,或可支持篩選。
修改現有的組合時,不需要這個方法。 您可以直接呼叫 ITfRange::SetText 來修改呼叫者先前輸入的文字。
結束時,如果 *pfInsertOk 設定為 FALSE,未來會呼叫 ITfRange::SetText 或 ITfRange::InsertEmbedded, 且此範圍可能會失敗。 否則, *pfInsertOk 會設定為 TRUE,而且範圍開始錨點或結束錨點可以視內容擁有者來重新置放。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 2000 專業版 [傳統型應用程式 |UWP 應用程式] |
最低支援的伺服器 | Windows 2000 Server [傳統型應用程式 |UWP 應用程式] |
目標平台 | Windows |
標頭 | msctf.h |
Dll | Msctf.dll |
可轉散發套件 | Windows 2000 專業版上的 TSF 1.0 |
另請參閱
ITFInsertAtSelection:InsertTextAtSelection
ITfEditSession::D oEditSession