Вобщим, есть такой код, когда наводишь мышу в Internet Explorer на текст- в программе этот текст высвечиввется. Смысл в том, что я ищу путь, что бы получить слово под курсором мыши в браузере. Получается только в IE пока через IAccessible, вот код. Но факт в том, что этот код получает не слово под курсором мыши, а целую строку или абзац. Как сделать, что бы находить слово под курсором мыши в этом абзаце? Мне кажется надо копать в сторону accHitTest и get_accChild то есть получить Child (одно слово из текстовой строки которая вернулась) и проверить на HitTest но я не знаю как это сделать. Как вобще замутить эту тему?
| Код | CString Name;
CPoint CursorPos; GetCursorPos( &CursorPos ); IAccessiblePtr pIAcc; _variant_t vt; BSTR pName = NULL; BSTR pValue = NULL;
if( SUCCEEDED( AccessibleObjectFromPoint( CursorPos, &pIAcc, &vt ))) { pIAcc->get_accChild( BSTR pName = NULL; if( SUCCEEDED( pIAcc->get_accName( vt, &pName ))) { if( pName && ::SysStringLen( pName )) { Name = pName; } ::SysFreeString( pName ); } }
|
|