WebKit接口解析之Accessibility

本文介绍了WebKit引擎如何实现Microsoft Active Accessibility技术,允许进程间查询和操作UI元素。内容包括Accessibility对象,如AccessibleBase、AccessibleDocument、AccessibleImage,以及获取这些对象的方法。
摘要由CSDN通过智能技术生成

转载,请注明出处!

         Accessibility的全称是Microsoft Active Accessibility,是windows平台实现的一套技术。这套技术实现的效果是:允许某进程查询、操作另一进程的UI元素。WebKit引擎也实现了这套理念:允许应用查询、操作Render树。

         Accessibility Framework有重要的2个子组件。1)Accessibility对象,即实现了IAccessible接口的对象。WebKit定义了3个类AccessibleBase、AccessibleDocument、AccessibleImage,这三个类实现了接口IAccessible。2)获得Accessibility对象的方法。WebKit也提供了获得IAccessible对象的方法。如下代码:

HRESULT hr = WebKitCreateInstance(CLSID_WebFrame, 0, IID_IWebFrame, pOut);
if (FAILED(hr))
    goto exit;
COMPtr<IAccessible> renderTRoot = pOut->accessible()

         renderTRoot是Render树根对应的Accessibility对象。
         WebCore:: AXObjectCache类负责创建、维护Accessible对象树。在Render树创建完成后,Document对象会执行AXObjectCache:: getOrCreate(RenderTRoot)创建Render树根的Accessible对象。注意,此时之创建了Render树根的Accessible对象&#x
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值