我刚开始研究可访问性,我对我遇到的不同技术感到有点困惑。
IAccessible和IAccessible2有什么区别?我最初认为IAccessible2可能是IAccessible的一个更新版本,但经过进一步的研究,它看起来实际上是由微软的竞争对手制造的。维基百科说:“它被定位为微软新的UI自动化API的替代品。”那么MSAA是如何融入这一过程的呢?
谁能澄清一下IAccessible、IAccessible2、UI自动化API和MSAA之间的区别吗?为什么其中一种比另一种更可取?
发布于 2019-03-12 20:34:05
微软的活动可访问性(MSAA)是微软最初的可访问性API;MSAA第1版是Windows 95的附加版本。MSAA对于它所支持的角色、名称、值和状态集是有限的;这意味着可以将其可访问性元数据传递给辅助技术(例如屏幕阅读器)的一组图形组件是有限的。
IAccessible是MSAA的一部分:
IAccessible接口是一组方法集合,这些方法公开了各种用户界面(UI)元素最常见的属性和行为。UI元素是控件,如菜单或按钮,它是用户界面的一部分。可访问对象是具有有意义的IAccessible接口的UI元素。
MSAA的局限性拒绝了IAccessible2 (最初在IBM)的开发,它旨在填补MSAA中的空白,例如“支持文本控件、表、超链接和可访问对象之间的关系”。它与Linux上的无障碍工具包(ATK) (特别是Gnome)进行了协调。IAccessible2是MSAA的补充,而不是替代。
Microsoft UI自动化是Microsoft自己的MSAA继任者。请参阅UI自动化与主动可访问性
Microsoft Active accessible是Windows 95中引入的遗留API,旨在使Windows应用程序可访问。Microsoft自动化是Windows的新的可访问性模型,旨在满足辅助技术产品和自动化测试工具的需求。UI自动化提供了与Microsoft Active Active相比的许多改进。
它为用户界面组件提供了一组更丰富的角色、状态和属性,可以传递给实现API的辅助技术。
这些较新的可访问性API至关重要的一个领域是对丰富互联网应用程序的可访问性支持。W3C的WAI规范的开发人员回顾了存在于各种平台上的可访问性API,并将可用的角色、状态和属性映射到其建议的WAI规范中。这涉及到映射表的创建,这可以在WI-ARIA1.0用户实现指南中找到。还请参阅微软文档中的用于W3C可访问的富互联网应用程序规范的UI自动化。在Microsoft中,微软从MSAA向UI自动化过渡。
https://stackoverflow.com/questions/55129774
复制相似问题