对象状态常量

本主题介绍用于描述应用程序 UI 中对象的状态的常量值。 状态常量在 oleacc.h 中定义。

对象随时与一个或多个这些状态值相关联。 不使用以下对象状态常量:STATE SYSTEM _ _ ALERT _ HIGH、STATE _ SYSTEM ALERT _ _ MEDIUM、STATE _ SYSTEM ALERT LOW 和 STATE SYSTEM _ _ _ _ FLOATING。

客户端通过调用 IAccessible::get _ accState检索对象的状态,这将返回一个整数,该整数是以下位标志的组合。 客户端使用状态值调用 GetStateText, 以检索描述对象状态的本地字符串。

当对象的状态发生更改时,服务器应调用具有 EVENT _ OBJECT _ STATECHANGE事件常量的 NotifyWinEvent。 但是,具有 STATE _ SYSTEM INVISIBLE、STATE SYSTEM FOCUSED 和 STATE SYSTEM SELECTED 对象 _ _ _ _ _ 状态常量的对象具有其自己的事件常量。 对于这些对象,请勿使用 EVENT _ OBJECT _ STATECHANGE。 请改为使用单个事件常量。

以下是对象状态常量:

返回的常量 说明
STATE _ SYSTEM _ ALERT _ HIGH
(不支持此对象状态常量。)
指示要立即传达给用户的重要信息。 例如,当电池达到严重低级别时,级别指示器会生成高级警报。 因此,盲访问工具会立即向用户公布此信息,屏幕放大程序会滚动屏幕,使电池指示器在视图中。 此状态也适用于任何提示或用户在能够继续操作之前必须要先完成的操作。
STATE _ SYSTEM _ ALERT _ MEDIUM
(不支持此对象状态常量。)
指示不会立即传达给用户的重要信息。 例如,当电池开始达到低级别时,级别指示器会生成中等级别的警报。 然后,盲访问工具会生成一个声音,让用户知道重要信息可用,而不会实际中断用户的工作。 然后,用户可以在方便时查询警报信息。
状态 _ 系统 _ _ 警报低
(不支持此对象状态常量。)
指示对用户来说不重要的低优先级信息。 例如,当 Word 更改其工具栏上 TipWizard 按钮的外观以指示其具有用户的提示时,会使用此状态。
状态 _ 系统 _ 动画处理
对象的外观会快速或不断地更改。 偶尔进行动画处理的图形被描述为 ROLE _ SYSTEM _ GRAPHIC, 其 State 属性设置为 STATE _ SYSTEM _ ANIMATED。 此状态用于指示对象的位置正在更改。
状态 _ 系统 _ 繁忙
控件目前不接受输入。
已 _ 检查 _ STATE SYSTEM
选中对象的复选框。
状态 _ 系统 _ 已折叠
隐藏具有 ROLE _ SYSTEM _ OUTLINEITEM 角色的对象的子项。
STATE _ SYSTEM _ DEFAULT
此状态表示窗口中的默认按钮。
已 _ 展开的 STATE _ SYSTEM
将显示具有 ROLE _ SYSTEM _ OUTLINEITEM 角色的对象的子项。
STATE _ SYSTEM _ EXTSELECTABLE
指示对象通过使用 IAccessible::accSelect 方法中的 SELFLAG _ EXTENDSELECTION 扩展其选择。
STATE _ SYSTEM _ FLOATING
(不支持此对象状态常量。)
对象不会剪裁到其父对象的边界,并且它不会自动在父对象移动时移动。
STATE _ SYSTEM _ FOCUSABLE
对象位于活动窗口中,已准备好接收键盘焦点。
以 _ STATE SYSTEM _ 为焦点
对象具有键盘焦点。 不要将对象焦点与对象选择混淆。 有关详细信息,请参阅选择 和焦点属性和方法。 对于具有此对象状态的对象,发送 EVENT _ OBJECT _ SHOWEVENT OBJECT _ _ HIDE WinEvents 以通知客户端应用程序状态更改。 请勿使用 EVENT _ OBJECT _ STATECHANGE
STATE _ SYSTEM _ HASPOPUP
调用时,对象将显示弹出菜单或窗口。
STATE _ SYSTEM _ HOTTRACKED
对象由鼠标进行热跟踪,这意味着对象的外观已更改,以指示鼠标指针位于该对象上。
状态 _ 系统 _ 不可见
以编程方式隐藏对象。 例如,菜单 itmes 以编程方式隐藏,直到用户激活菜单。 由于具有此状态的对象不可供用户使用,因此客户端应用程序不得向用户传达有关该对象的信息。 但是,如果客户端应用程序找到具有此状态的对象,则它们应检查是否也设置了 STATE _ SYSTEM _ OFFSCREEN。 如果定义了第二种状态,则客户端可以将有关对象的信息传达给用户。 例如,列表框可以同时设置 STATE SYSTEM INVISIBLE 和 _ _ STATE SYSTEM _ _ OFFSCREEN。 在这种情况下,客户端应用程序可以将列表中的所有项传达给用户。
如果客户端应用程序在 IAccessible 树中导航并遇到不可见的父对象,Microsoft Active Accessibility只要父应用程序不可见,则 Microsoft Active Accessibility 不会公开有关父应用程序的任何可能子级的信息。
已 _ 链接的 _ STATE SYSTEM
指示对象的格式设置为超链接。 对象的角色通常是 ROLE SYSTEM _ _ TEXT
STATE _ SYSTEM _ MARQUEED
指示滚动或移动文本或图形。
STATE _ SYSTEM _ MIXED
指示未确定三状态复选框或工具栏按钮的状态。 该复选框既未选中也不清除,因此为第三种 或混合状态
STATE _ SYSTEM _ MOVEABLE
指示可以移动对象。 例如,用户可以单击对象的标题栏,并将该对象拖动到新位置。
STATE _ SYSTEM _ MULTISELECTABLE
指示对象接受多个选定项;也就是说 ,IAccessible::accSelect方法的 SELFLAG _ ADDSELECTION有效。
STATE _ SYSTEM _ NORMAL
指示对象没有为其分配其他状态。
STATE _ SYSTEM _ OFFSCREEN
对象已剪裁或滚动到视图外,但不以编程方式隐藏。 如果用户使视区变大,则更多对象将在计算机屏幕上可见。
已 _ 按下 _ 状态系统
按下 对象。
STATE _ SYSTEM _ PROTECTED
对象是受密码保护的编辑控件。
STATE _ SYSTEM _ READONLY
对象被指定为只读。
STATE _ SYSTEM _ SELECTABLE
对象接受选择。
已 _ 选择 STATE _ SYSTEM
对象已选中。
状态 _ 系统 _ SELFVOICING
对象或子级出于说明目的使用文本到语音 (TTS) 技术。 当具有此状态的对象具有焦点时,基于语音的辅助功能帮助不会公布信息,因为该对象会自动公告。
状态 _ 系统 _ 就前往
可以调整对象的大小。 例如,用户可以通过将窗口拖到边框上来更改窗口大小。
已 _ 遍历状态系统 _
对象是 (以前单击过用户) 的超链接。
状态 _ 系统 _ 不可用
对象不可用。

要求

要求 Value
标头
Oleacc