#c #com #ui-automation
#c #com #пользовательский интерфейс-автоматизация
Вопрос:
Цель: получить имя типа элемента управления в виде строки (т.е. Кнопка, флажок, меню, элемент меню и т. Д.) Из элемента Uiautomation с помощью простого C
Пока у меня есть следующий код:
#define COBJMACROS
#include "UiAutomationClient.h"
#include "UiAutomationCore.h"
POINT pt;
IUIAutomation *pAutomation = NULL;
IUIAutomationElement *element = NULL;
CONTROLTYPEID element_type;
GetCursorPos(amp;pt);
hr = IUIAutomation_ElementFromPoint(pAutomation, pt, amp;element);
if(SUCCEEDED(hr) amp;amp; element != NULL){
hr = IUIAutomationElement_get_CurrentControlType(element,amp;element_type);
if(SUCCEEDED(hr)){
????
}
}
Насколько я понял, с помощью get_CurrentControlType я получаю идентификатор типа элемента управления, но меня интересует имя этого типа элемента управления. Кто-нибудь может знать, как это сделать?. Tks заранее
Комментарии:
1. IUIAutomationElement_get_CurrentLocalizedControlType ?
2. @Simon Mourier спасибо за вашу помощь
Ответ №1:
Вместо этого вы могли бы использовать IUIAutomationElement::get_CurrentLocalizedControlType .
BSTR* retVal;
element->get_CurrentLocalizedControlType(amp;retVal);