Выбор дочерних объектов
Клиенты вызывают метод IAccessible::accSelect для изменения выделения или фокуса клавиатуры между дочерними элементами в объекте. Константы SELFLAG, указанные с помощью вызова , определяют операцию, которую необходимо выполнить.
Если метод IAccessible::accSelect вызывается с флагом SELFLAG_TAKEFOCUS для дочернего объекта с HWND, флаг вступает в силу только в том случае, если фокус находится на родительском объекте.
Выполнение сложных операций выбора
Ниже описано, какие значения SELFLAG следует указывать при вызове метода IAccessible::accSelect для выполнения сложных операций выбора.
Имитация щелчка
- | SELFLAG_TAKEFOCUS SELFLAG_TAKESELECTION
Выбор целевого элемента с помощью сочетания клавиш CTRL и щелчка
- | SELFLAG_TAKEFOCUS SELFLAG_ADDSELECTION
Отмена выбора целевого элемента путем имитации нажатия клавиш CTRL+щелчок
- | SELFLAG_TAKEFOCUS SELFLAG_REMOVESELECTION
Имитация shift+щелчок
- | SELFLAG_TAKEFOCUS SELFLAG_EXTENDSELECTION
Выбор диапазона объектов и размещение фокуса на последнем объекте
- Укажите SELFLAG_TAKEFOCUS на начальном объекте, чтобы задать привязку выбора.
- Снова вызовите метод IAccessible::accSelect и укажите SELFLAG_EXTENDSELECTION | SELFLAG_TAKEFOCUS последнего объекта.
Отмена выделения всех объектов
- Укажите SELFLAG_TAKESELECTION для любого объекта. Этот флаг отменяет выбор всех выбранных объектов, кроме только что выбранного.
- Снова вызовите метод IAccessible::accSelect и укажите SELFLAG_REMOVESELECTION для оставшегося объекта.