Константы состояния объекта
В этом разделе описываются константы, используемые для описания состояния объектов в пользовательском интерфейсе приложения. Константы состояния определяются в oleacc.h.
Объект связан с одним или несколькими значениями состояния в любое время. Следующие константы состояния объекта не используются: STATE_SYSTEM_ALERT_HIGH, STATE_SYSTEM_ALERT_MEDIUM, STATE_SYSTEM_ALERT_LOW и STATE_SYSTEM_FLOATING.
Клиенты получают состояние объекта путем вызова IAccess::get_accState, которое возвращает целое число, которое является сочетанием следующих битовых флагов. Клиенты вызывают GetStateText со значением состояния, чтобы получить локализованную строку, описывающую состояние объекта.
При изменении состояния объекта серверы должны вызывать NotifyWinEvent с константой события EVENT_OBJECT_STATECHANGE. Однако объекты с STATE_SYSTEM_INVISIBLE, STATE_SYSTEM_FOCUSED и STATE_SYSTEM_ константы состояния объекта SELECTED имеют собственные константы событий. Для этих объектов не используйте EVENT_OBJECT_STATECHANGE. Вместо этого используйте константу отдельного события.
Ниже приведены константы состояния объекта:
Постоянный | Описание |
---|---|
STATE_SYSTEM_ALERT_HIGH 0x10000000 |
(Эта константа состояния объекта не поддерживается.) Указывает, что важные сведения должны быть немедленно переданы пользователю. Например, когда батарея достигает критически низкого уровня, индикатор уровня создает оповещение высокого уровня. В результате средство слепого доступа немедленно объявляет эти сведения пользователю, и программа увеличения экрана прокручивает экран, чтобы индикатор батареи был в представлении. Это состояние также подходит для любого запроса или операции, которая должна быть завершена, прежде чем пользователь сможет продолжить работу. |
STATE_SYSTEM_ALERT_MEDIUM 0x8000000 |
(Эта константа состояния объекта не поддерживается.) Указывает важные сведения, которые не передаются пользователю немедленно. Например, когда батарея начинает достигать низкого уровня, индикатор уровня создает оповещение среднего уровня. Затем средство слепого доступа создает звук, чтобы сообщить пользователю, что важная информация доступна, не прерывая работу пользователя. Затем пользователь может запрашивать сведения об оповещении, когда это удобно. |
STATE_SYSTEM_ALERT_LOW 0x4000000 |
(Эта константа состояния объекта не поддерживается.) Указывает сведения с низким приоритетом, которые не важны для пользователя. Это состояние используется, например, когда Word изменяет внешний вид кнопки TipWizard на панели инструментов, чтобы указать, что у него есть подсказка для пользователя. |
STATE_SYSTEM_ANIMATED 0x4000 |
Внешний вид объекта быстро или постоянно изменяется. Графики, анимированные иногда, описываются как ROLE_SYSTEM_GRAPHIC с свойством State, установленным для STATE_SYSTEM_ANIMATED. Это состояние используется для указания того, что расположение объекта изменяется. |
STATE_SYSTEM_BUSY 0x800 |
Элемент управления не может принимать входные данные в настоящее время. |
STATE_SYSTEM_CHECKED 0x10 |
Установлен флажок объекта. |
STATE_SYSTEM_COLLAPSED 0x400 |
Дочерние элементы объекта, имеющие роль ROLE_SYSTEM_OUTLINEITEM, скрыты. |
STATE_SYSTEM_DEFAULT 0x100 |
Это состояние представляет кнопку по умолчанию в окне. |
STATE_SYSTEM_EXPANDED 0x200 |
Отображаются дочерние элементы объекта, имеющие роль ROLE_SYSTEM_OUTLINEITEM. |
STATE_SYSTEM_EXTSELECTABLE 0x2000000 |
Указывает, что объект расширяет свой выбор с помощью SELFLAG_EXTENDSELECTION в методе IAccessible::accSelect. |
STATE_SYSTEM_FLOATING 0x1000 |
(Эта константа состояния объекта не поддерживается.) Объект не обрезается до границы родительского объекта, и он не перемещается автоматически при перемещении родительского объекта. |
STATE_SYSTEM_FOCUSABLE 0x100000 |
Объект находится в активном окне и готов к получению фокуса клавиатуры. |
STATE_SYSTEM_FOCUSED 0x4 |
Объект имеет фокус клавиатуры. Не путайте фокус объекта с выделением объектов. Дополнительные сведения см. в разделе Свойства и методы выделения и фокуса. Для объектов с этим состоянием объекта отправьте EVENT_OBJECT_SHOW или EVENT_OBJECT_HIDE WinEvents, чтобы уведомить клиентские приложения об изменениях состояния. Не используйте EVENT_OBJECT_STATECHANGE. |
STATE_SYSTEM_HASPOPUP 0x40000000 |
При вызове объект отображает всплывающее меню или окно. |
STATE_SYSTEM_HOTTRACKED 0x80 |
Объект отслеживается мышью, что означает, что внешний вид объекта изменился, чтобы указать, что указатель мыши находится над ним. |
STATE_SYSTEM_INVISIBLE 0x8000 |
Объект программно скрыт. Например, имиты меню программно скрыты, пока пользователь не активирует меню. Поскольку объекты с этим состоянием недоступны для пользователей, клиентские приложения не должны передавать сведения об объекте пользователям. Однако если клиентские приложения находят объект с этим состоянием, они должны проверить, задано ли STATE_SYSTEM_OFFSCREEN. Если это второе состояние определено, клиенты могут передавать сведения об объекте пользователям. Например, поле списка может иметь STATE_SYSTEM_INVISIBLE и STATE_SYSTEM_OFFSCREEN набор. В этом случае клиентское приложение может взаимодействовать со всеми элементами списка пользователями. Если клиентское приложение перемещается по дереву IAccessible и обнаруживает родительский объект, который невидим, Microsoft Active Accessibility не будет предоставлять информацию о любых возможных дочерних элементах родительского элемента, пока родительский объект невидим. |
STATE_SYSTEM_LINKED 0x400000 |
Указывает, что объект отформатирован как гиперссылка. Роль объекта обычно будет ROLE_SYSTEM_TEXT. |
STATE_SYSTEM_MARQUEED 0x2000 |
Указывает прокрутку или перемещение текста или графики. |
STATE_SYSTEM_MIXED 0x20 |
Указывает, что состояние трехэтапного флажка или кнопки панели инструментов не определено. Этот флажок не выбран и не очищается и поэтому находится в третьем или смешанном состоянии. |
STATE_SYSTEM_MOVEABLE 0x40000 |
Указывает, что объект можно переместить. Например, пользователь может щелкнуть заголовок объекта и перетащить объект в новое расположение. |
STATE_SYSTEM_MULTISELECTABLE 0x1000000 |
Указывает, что объект принимает несколько выбранных элементов; то есть SELFLAG_ADDSELECTION для метода IAccessible::accSelect является допустимым. |
STATE_SYSTEM_NORMAL 0 |
Указывает, что объекту не назначено другое состояние. |
STATE_SYSTEM_OFFSCREEN 0x10000 |
Объект обрезается или прокручивается вне представления, но он не скрыт программным способом. Если пользователь делает окно просмотра больше, больше объекта будет отображаться на экране компьютера. |
STATE_SYSTEM_PRESSED 0x8 |
Объект нажимается. |
STATE_SYSTEM_PROTECTED 0x20000000 |
Объект является элементом управления редактированием, защищенным паролем. |
STATE_SYSTEM_READONLY 0x40 |
Объект назначен только для чтения. |
STATE_SYSTEM_SELECTABLE 0x200000 |
Объект принимает выбор. |
STATE_SYSTEM_SELECTED 0x2 |
Выбран объект. |
STATE_SYSTEM_SELFVOICING 0x80000 |
Объект или дочерний объект использует технологию преобразования текста в речь (TTS) в целях описания. Если объект с этим состоянием имеет фокус, средство специальных возможностей на основе речи не объявляет информацию, так как объект автоматически объявляет его. |
STATE_SYSTEM_SIZEABLE 0x20000 |
Объект можно изменить. Например, пользователь может изменить размер окна, перетащив его по границе. |
STATE_SYSTEM_TRAVERSED 0x800000 |
Объект — это гиперссылка, которую посетил пользователь (ранее щелкнул). |
STATE_SYSTEM_UNAVAILABLE 0x1 |
Объект недоступен. |
Требования
Требование | Ценность |
---|---|
Заголовок |
Oleacc.h |