瞭解消費者介面自動化文字物件模型
本主題描述 Microsoft 消費者介面自動化用戶端應用程式如何存取以文字為基礎的控制項的文字內容。
以文字為基礎的控制項會透過簡單的文字物件模型,將文字內容公開給消費者介面自動化用戶端應用程式。 用戶端應用程式可以透過 Text 和 TextRange 控制項模式介面存取文字物件模型,包括 IUIAutomationTextPattern 和 IUIAutomationTextRange。 用戶端應用程式可以使用這些介面,從文字型控制項擷取文字內容、文字屬性和内嵌物件,例如資料表和超連結。
支援消費者介面自動化文字物件模型的控制項類型包括[編輯] 和 [檔] 控制項類型。 其他控制項類型,例如 ToolTip 和 Text 可能也支援文字物件模型,但並非必要。
注意
消費者介面自動化文字物件模型不提供插入或修改文字的方法。 不過,某些控制項可透過 IUIAutomationValuePattern 介面或直接鍵盤輸入來插入或修改文字。
控制項特定的物件模型
實作自己的 Document Object Model (DOM) 的文字型控制項可以藉由實作 ObjectModel 控制項模式來公開 DOM。 公開 DOM 可讓用戶端應用程式更充分地存取及控制以文字為基礎的控制項內容。
用戶端應用程式可以藉由擷取控制項的 IUIAutomationElement 介面來探索特定文字型控制項是否實作 DOM。 然後,呼叫 IUIAutomationElement::GetCurrentPropertyValue 方法,並指定 UIA_IsObjectModelPatternAvailablePropertyId 屬性識別碼,並在控制項實作 DOM 時收到 TRUE 的變體。
若要存取 DOM,請呼叫 IUIAutomationElement::GetCurrentPattern 方法,並指定 UIA_ObjectModelPatternId 控制項模式識別碼,以及接收 IUIAutomationObjectModelPattern 介面的變數。 呼叫 IUIAutomationObjectModelPattern::GetUnderlyingObjectModel 方法來擷取 DOM 介面。
相關主題