激活 ActiveX 控件(3)

当辅助工具遇到 ActiveX 控件时,可以使用对象的 IAccessible 接口获取有关该控件的信息。可以用 IAccessible::accDoDefaultAction 方法激活未激活的控件。

下表描述在未激活控件上调用 IAccessible 方法产生的结果。

方法   说明  

IAccessible::accDoDefaultAction

 

激活控件并在 MSAA 树内公开 ActiveX 控件或 Java Applet。

 

IAccessible::accHitTest

 

返回 CHILDID_SELF

 

IAccessible::accLocation

 

底层 ActiveX 控件或 Java Applet 的位置

 

IAccessible::accNavigate

 

返回 E_NOTIMPL

 

IAccessible::accSelect

 

返回 E_NOTIMPL

 

IAccessible::get_accChild

 

返回 S_FALSE

 

IAccessible::get_accChildCount

 

返回 0 和 S_OK

 

IAccessible::get_accDefaultAction

 

返回“Select this control”

 

IAccessible::get_accDescription

 

返回 E_NOTIMPL

 

IAccessible::get_accFocus

 

返回 E_NOTIMPL

 

IAccessible::get_accHelp

 

返回“This control is inactive.Select the control to activate and use it.”

 

IAccessible::get_accHelpTopic

 

没有变化 — 返回 E_NOTIMPL

 

IAccessible::get_accKeyboardShortcut

 

没有变化 — 委托该对象。如果没有对象,该方法返回 E_NOTIMPL。

 

IAccessible::get_accName

 

返回“Inactive Control”

 

IAccessible::get_accParent

 

没有变化 — 返回父链中最近的可访问的元素。

 

IAccessible::get_accRole

 

返回 ROLE_SYSTEM_PUSHBUTTON

 

IAccessible::get_accSelection

 

返回 E_NOTIMPL

 

IAccessible::get_accState

 

返回对象的当前状态。该状态总是包括 STATE_SYSTEM_FOCUSABLE

 

IAccessible::get_accValue

 

返回 E_NOTIMPL

 

IAccessible::put_accName

 

返回 E_NOTIMPL

 

IAccessible::put_accValue

 

返回 E_NOTIMPL

 

有关激活的控件或不需要激活的控件的信息,请参阅 Active Accessibility SDK

辅助工具触发默认操作后应该刷新,这样才能正确显示 ActiveX 控件的数据及其子控件的数据(如果有)。

WebBrowser 控件影响

默认情况下,宿主 WebBrowser Control 的自定义应用程序不会阻止由 APPLETEMBEDOBJECT 元素加载的交互式 ActiveX 控件。未激活控件阻止仅应用于以下应用程序。

 

Windows Explorer

 
 

Internet Explorer

 
 

MSN Explorer

 
 

AOL®Explorer

 
 

AOL®8.0

 
 

AOL®9.0

 
 

CompuServe 2000

 
 

AIM®

 
 

Maxthon Browser

 
 

NetCaptor

 
 

Browse3D

 
 

Macromedia Dreamweaver

 
 

Macromedia Contribute

 
 

Netscape®8(将 Internet Explorer 用作呈现引擎时)

 

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wjjdyf.html