У меня есть управление 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 не выбирает сам элемент управления.
Принимая во внимание, что если я нажимаю на отдельные элементы управления внутри элемента управления, я получаю это:
Есть идеи, как заставить эту работу работать?