ITextRangeProvider::Move 方法 (uiautomationcore.h)
將文字範圍向前或向後移動指定的文字單位數。
語法
HRESULT Move(
TextUnit unit,
[in] int count,
[out, retval] int *pRetVal
);
參數
unit
[in] count
類型: int
要移動的文字單元數。 正值會將文字範圍向前移動。
負值會將文字範圍向後移動。 零沒有作用。
[out, retval] pRetVal
類型: int*
實際移動的文字單位數目。 如果新的文字範圍端點大於或小於 ITextProvider::D ocumentRange 方法所擷取的端點,這可以小於所要求的數目。 如果巡覽是在向後方向進行,這個值可能是負數。
傳回值
類型: HRESULT
如果此方法成功,則會傳回 S_OK。 否則,它會傳回 HRESULT 錯誤碼。
備註
ITextRangeProvider::Move 應該只移動文字範圍以跨越文字的不同部分,它不應該以任何方式改變文字。
對於非變質 (非空白) 文字範圍, ITextRangeProvider::Move 應該透過執行下列步驟來正規化及移動文字範圍。
- 將文字範圍折疊為起始端點的空白 (空) 範圍。
- 如有必要,請將檔中產生的文字範圍往後移動至要求的單位界限開頭。
- 依要求的文字單位界限數目,在檔中向前或向後移動文字範圍。
- 將結束端點向前移動一個要求的文字單位界限,以從變質狀態展開文字範圍。
如果是變質的文字範圍, ITextRangeProvider::Move 應該只依指定的文字單位數目移動文字插入點。
移動文字範圍時,提供者應該忽略文字中任何內嵌物件的界限。
ITextRangeProvider::Move 應該同時遵守隱藏和可見的文字。
如果文字型控件不支援 unit 參數所指定的文字單位,提供者應該取代下一個較大的支持文字單位。
文字單位的大小,從最小單位到最大,如下所示。
- 字元
- 格式
- Word
- 線
- Paragraph
- 頁面
- 文件
單位為 時的範圍行為TextUnit::Format
TextUnit::Format
作為單位值,會將文字範圍的界限定位為根據共用文字屬性展開或移動範圍, (格式) 範圍內文字。 不過,使用格式文字單位不應移動或展開內嵌物件界限的文字範圍,例如影像或超連結。 如需詳細資訊,請參閱 使用者介面自動化 文字單位或文字和 TextRange 控件模式。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows XP [傳統型應用程式 |UWP 應用程式] |
最低支援的伺服器 | Windows Server 2003 [傳統型應用程式 |UWP 應用程式] |
目標平台 | Windows |
標頭 | uiautomationcore.h (包含 UIAutomation.h) |
另請參閱
概念
參考
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應