Поделиться через


Получение указателя интерфейса объекта со специальными возможностями

Клиентские приложения Microsoft Active Accessibility извлекают указатели интерфейса на объекты со специальными возможностями с помощью одной из следующих функций.

AccessibleObjectFromEvent

Многие клиенты ищут сведения о конкретных доступных объектах, создающих события. Так как интерфейс IAccessible является "шлюзом" для доступных объектов, клиенты должны иметь простой способ связать События WinEvent с интерфейсом IAccess объекта, создающего события. Microsoft Active Accessibility предоставляет функцию AccessibleObjectFromEvent специально для этой цели.

Примечание

Клиенты с функциями перехватчика в контексте должны вызывать функцию IsWindow перед вызовом AccessibleObjectFromEvent.

 

Функция AccessibleObjectFromEvent принимает большую часть информации, получаемой функцией-перехватчиком клиента. Когда функция перехватчика клиента получает уведомление о событии, она передает соответствующие параметры из событий в AccessibleObjectFromEvent.

Функция извлекает интерфейс IAccessible элемента пользовательского интерфейса, создающего событие, или интерфейс родительского объекта элемента. Если возвращается указатель интерфейса родительского объекта, клиент вызывает свойства и методы родительского объекта для получения сведений о дочернем элементе, который создал событие.

AccessibleObjectFromPoint

Чтобы получить адрес интерфейса IAccess объекта в указанной точке экрана, клиенты используют функцию AccessibleObjectFromPoint .

AccessibleObjectFromWindow

Чтобы получить интерфейс IAccess объекта из дескриптора окна, клиенты используют функцию AccessibleObjectFromWindow .

Возможно, серверы возвращают отдельные указатели интерфейса для одного и того же элемента пользовательского интерфейса при каждом вызове функции AccessibleObjectFromEvent, AccessibleObjectFromPoint или AccessibleObjectFromWindow . Чтобы определить, ссылаются ли два указателя на один и тот же элемент пользовательского интерфейса, разработчики клиентов должны сравнить свойства IAccessible объекта, а не указатели.