Понимание текстовой объектной модели автоматизации пользовательского интерфейса
В этом разделе описывается, как клиентские приложения службы автоматизации пользовательского интерфейса Майкрософт получают доступ к текстовому содержимому текстового элемента управления.
Элементы управления на основе текста предоставляют текстовое содержимое клиентским приложениям службы автоматизации пользовательского интерфейса с помощью простой текстовой объектной модели. Клиентские приложения имеют доступ к текстовой объектной модели через интерфейсы паттернов управления Text и TextRange, включая интерфейсы IUIAutomationTextPattern и IUIAutomationTextRange. Клиентские приложения могут использовать эти интерфейсы для получения текстового содержимого, текстовых атрибутов и внедренных объектов, таких как таблицы и гиперссылки из текстовых элементов управления.
Типы элементов управления, поддерживающие текстовую объектную модель автоматизации пользовательского интерфейса, включают Редактирование и Документ. Другие типы элементов управления, такие как подсказка и text, также могут поддерживать текстовую объектную модель, но они не требуются.
Заметка
Текстовая объектная модель автоматизации пользовательского интерфейса не предоставляет средства для вставки или изменения текста. Однако некоторые элементы управления позволяют вставлять или изменять текст с помощью интерфейса IUIAutomationValuePattern или с помощью прямого ввода клавиатуры.
Объектная модель для конкретного элемента управления
Текстовый элемент управления, реализующий собственную объектную модель документа (DOM), может предоставлять DOM, реализуя шаблон элемента управления ObjectModel. Предоставление доступа к DOM может дать клиентским приложениям более широкий доступ и контроль над содержимым текстового элемента управления.
Клиентское приложение может определить, реализует ли определенный текстовый элемент управления DOM, получив интерфейс IUIAutomationElement данного элемента управления. Затем вызовите метод IUIAutomationElement::GetCurrentPropertyValue, указав идентификатор свойства UIA_IsObjectModelPatternAvailablePropertyId и вариант, который получает значение TRUE, если элемент управления реализует DOM.
Чтобы получить доступ к DOM, вызовите метод IUIAutomationElement::GetCurrentPattern, указав идентификатор шаблона управления UIA_ObjectModelPatternId и переменную, которая получает интерфейс IUIAutomationObjectModelPattern. Вызовите метод IUIAutomationObjectModelPattern::GetUnderlyingObjectModel, чтобы получить интерфейс DOM.
Связанные разделы
-
поддержка автоматизации пользовательского интерфейса для текстового содержимого