WEB开发网
开发学院软件开发VC 活动的可访问兼容型应用给程序员带来使用软件的新... 阅读

活动的可访问兼容型应用给程序员带来使用软件的新工具

 2007-03-22 21:31:12 来源:WEB开发网   
核心提示: Figure 2 Levels of IAccessible图2反映了一个原则:每个基于HWND的UI元素有两级IAccessible:代表全部HWND的父亲,代表客户和非客户区(例如窗口滚动条、菜单等等)的子,活动的可访问兼容型应用给程序员带来使用软件的新工具(5),一个控件称为是被标示

Figure 2 Levels of IAccessible

图2反映了一个原则:每个基于HWND的UI元素有两级IAccessible:代表全部HWND的父亲,代表客户和非客户区(例如窗口滚动条、菜单等等)的子。一个控件称为是被标示的,如果它跟在一个标签之后。在本例中,Look in: combobox是一个被标示的控件,标签是Look in:。对于被标示的控件,父/子树包括两个入口:标签的名字和角色窗口。与静态文本和控件相关的接口是这些入口的子。属性页的祖先是Find: All Files对话框。最高层的父亲是桌面窗口。

通常,基于HWND的控件的父/子等级由OLEACC.DLL在HWND体系基础上创建并支持。可访问的无窗口控件的供应商必须手工的创建和管理它们的内在体系。因为在一棵父/子树中通常有很多中间的IAccessible接口,该树经常是很复杂的。

在我们讨论如何使用Active Accessibility设计测试软件之前,还有一个问题应该搞清楚。为什么用一个Iaccessible接口/子ID对,而不是仅用一个Iaccessible接口表示一个UI元素?下一节我们来看一下这个问题。

Iaccessible接口/子ID对

让我们来考虑一个支持Iaccessible接口并有许多子的控件,例如一个有许多条目的列表框,有两种方法使这个控件可被访问。一个是支持列表框自身的Iaccessible接口和每一个条目的Iaccessible接口,另一个是只支持一个控件的Iaccessible接口,这个控件将提供基于某种识别方法访问它的子的功能。

用第一种方法,为控件和它的每个子创建单独的COM对象,和第二种方法相比,这将增加内存消耗,在第二种方法里,每个子并不支持自己的Iaccessible接口,而是通过其父亲的接口来访问,另一个参数——子ID——同父亲的Iaccessible接口一起使用来表示一个子。子ID总是VT_I4类型的变量,包含一个由程序决定的独特的值,或者只是子的一个序号。编号意味着第一个子有为1的ID,第二个子的ID是2,依次增长。

上一页  1 2 3 4 5 6 7 8 9 10  下一页

Tags:活动 访问 兼容

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接