![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Нужно определить слова под курсором мышки. [D6, D7, Win2k]
Reals © (2004-03-22 15:52:00)Здравствуйте, уважаемые! Подскажите пожалуйста, как можно определить (узнать) какое слово находиться под курсором мышки?
Слышал что как-то можно использоваться библиотеку OleACC.dll, котороая используеться для настроек винды для "людей с
ограниченными возможностями", и там есть несколько функций, среди которых можно и "взять слово под курсором". Может кто случайно сталкивался как это можно осуществить.
А то вот уже 3 дня как ищу что-то в инете по поводу этой самой dll-ки ничего не получаеться найти. А может можно как и стандартными WinAPI командами, неиспользуя этой библиотеки, если конечно возможно?
Заранее премного благодарен!
Reals (2004-03-24 19:38:00) [1]To Vit@ly:
Ага, вот теперь понятно чуть стало.
Спасибо!
Vit@ly (2004-03-24 18:13:00) [2]Может быть я чего-то не догоняю, но по-моему мышь(все-таки) находится не над словом, а над контролом. А отсюда и выводы. Забирать текст целиком, а затем по позиции мыши на контроле парсить строку.
Reals (2004-03-24 17:37:00) [3]ToWebErr
> А посчитать?
Что посчитать то???????
Вот и расскажи, я же прошу помощи, если знаешь как реализовать, то подскажи пожалуйста. А посчитать слова, я вообще не имею понятия как ты это себе представляешь, с помощью подсчитывания определить какое слово выделено.
ToPolevi:
Спасибо за подсказку. Я что-то совсем не додумался, из-за огромного напряжения, в MSDN`е поискать.
Polevi (2004-03-24 15:50:00) [4]в oleacc.dll определены 2 интерфейса
IAccessible = interface(IDispatch)
IAccessibleHandler = interface(IUnknown)
если тебя интересует технология Microsoft Accessibility тебе сюда
http://msdn.microsoft.com/library/default.asp?url=/nhp/Default.
asp?contentid=28000544
WebErr (2004-03-24 15:41:00) [5]
> ОДНО СЛОВО, которое находиться ПОД КУРСОРОМ
А посчитать? :))))
Неужели влом!!! :)))))))))))))))))))))))))
Reals (2004-03-24 15:35:00) [6]Так проблема в том, что выдирает весь текст из Edit-компонента (где находиться текст), а мне нужно только ОДНО СЛОВО, которое находиться ПОД КУРСОРОМ.
WebErr (2004-03-24 13:33:00) [7]
> Тексты выдирает без проблем.
Тогда в чём проблема?
Reals (2004-03-24 10:58:00) [8]Я все сообщения перепробовал, касающиеся "вытаскивания" текста. Три дня "убил" на это. Тексты выдирает без проблем. Но мне нужно именно то слово, которое под курсором мышки находиться.
Знаю на 100% что это возможно при помощи библиотеки OleACC.dll. Но вот как, совсем не представляю.
Вот есть программа, которая использует эту библиотеку ( http://www.anplex.ru/). Я написал автору письмо спросьбой подсказать что-либо, но он молчит.
Спасибо!
Diamond Cat (2004-03-24 03:56:00) [9]
> pohil ©
senmessage с wm_gettext равно как и getwindowtext возвращают нет отдельное слово, а весь текст из запрошенного окна, к тому же далеко не все окна дают этот текст тот же експлорер весело начхает на такие запросы
pohil (2004-03-24 01:37:00) [10]Сначала определи HWND функция WindowFromPoint. А потом как обычно SendMessage(HWND, {чего-то вроде WM_GETTEXT}, wParam, lParam). Сообщение непомю какое точно, поюзай с полчаса, если надо, то точно найдешь.
Reals (2004-03-23 10:57:00) [11]Так имееться ввиду не графическую надпись, а текстовую, например из Explorera, Word`а, Notepad`а и т.п.
Алхимик (2004-03-23 09:08:00) [12]Что значит "слово под курсором мыши"?
Я на канвасе напишу что нить, сам Fine Reader не поймёт.