我有一个MFC控制。我希望其中的项目在诸如AccExplorer之类的工具中具有不同的名称。我在构造函数中调用EnableActiveAccessibility
,并尝试按如下方式重载get_accName
:
HRESULT CGPP2XDCAMPathAndDesc::get_accName(VARIANT varChild, BSTR * pszName)
{
HRESULT res = S_OK;
if (varChild.vt != VT_I4)
{
*pszName = NULL;
return E_INVALIDARG;
}
switch (varChild.lVal)
{
case CHILDID_SELF:
*pszName = SysAllocString(_T("P2XDCAM control"));
break;
case CHILDID_DRIVE_LIST:
*pszName = SysAllocString(_T("Path list"));
break;
...
default:
res = E_UNEXPECTED;
break;
};
return res;
}
当我尝试获取整个控件的可访问数据时,得到以下信息: 点击任何关于AccExplorer的“未初始化”控件没有选择控件本身。
有什么主意要怎么做吗?