Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.05.16;
Скачать: CL | DM;

Вниз

Нужно определить слова под курсором мышки.   Найти похожие ветки 

 
Reals ©   (2004-03-22 15:52) [0]

Здравствуйте, уважаемые! Подскажите пожалуйста, как можно определить (узнать) какое слово находиться под курсором мышки?

Слышал что как-то можно использоваться библиотеку OleACC.dll, котороая используеться для настроек винды для "людей с
ограниченными возможностями", и там есть несколько функций, среди которых можно и "взять слово под курсором". Может кто случайно сталкивался как это можно осуществить.

А то вот уже 3 дня как ищу что-то в инете по поводу этой самой dll-ки ничего не получаеться найти. А может можно как и стандартными WinAPI командами, неиспользуя этой библиотеки, если конечно возможно?

Заранее премного благодарен!


 
Алхимик ©   (2004-03-23 09:08) [1]

Что значит "слово под курсором мыши"?
Я на канвасе напишу что нить, сам Fine Reader не поймёт.


 
Reals ©   (2004-03-23 10:57) [2]

Так имееться ввиду не графическую надпись, а текстовую, например из Explorera, Word`а, Notepad`а и т.п.


 
pohil ©   (2004-03-24 01:37) [3]

Сначала определи HWND функция WindowFromPoint. А потом как обычно SendMessage(HWND, {чего-то вроде WM_GETTEXT}, wParam, lParam). Сообщение непомю какое точно, поюзай с полчаса, если надо, то точно найдешь.


 
Diamond Cat ©   (2004-03-24 03:56) [4]


> pohil ©  

senmessage с  wm_gettext равно как и getwindowtext возвращают нет отдельное слово, а весь текст из запрошенного окна, к тому же далеко не все окна дают этот текст тот же експлорер весело начхает на такие запросы


 
Reals ©   (2004-03-24 10:58) [5]

Я все сообщения перепробовал, касающиеся "вытаскивания" текста. Три дня "убил" на это. Тексты выдирает без проблем. Но мне нужно именно то слово, которое под курсором мышки находиться.

Знаю на 100% что это возможно при помощи библиотеки OleACC.dll. Но вот как, совсем не представляю.
Вот есть программа, которая использует эту библиотеку (http://www.anplex.ru/). Я написал автору письмо спросьбой подсказать что-либо, но он молчит.

Спасибо!


 
WebErr ©   (2004-03-24 13:33) [6]


> Тексты выдирает без проблем.

Тогда в чём проблема?


 
Reals ©   (2004-03-24 15:35) [7]

Так проблема в том, что выдирает весь текст из Edit-компонента (где находиться текст), а мне нужно только ОДНО СЛОВО, которое находиться ПОД КУРСОРОМ.


 
WebErr ©   (2004-03-24 15:41) [8]


> ОДНО СЛОВО, которое находиться ПОД КУРСОРОМ

А посчитать? :))))
Неужели влом!!! :)))))))))))))))))))))))))


 
Polevi ©   (2004-03-24 15:50) [9]

в oleacc.dll определены 2 интерфейса

IAccessible = interface(IDispatch)
IAccessibleHandler = interface(IUnknown)

если тебя интересует технология Microsoft Accessibility тебе сюда
http://msdn.microsoft.com/library/default.asp?url=/nhp/Default.
asp?contentid=28000544


 
Reals ©   (2004-03-24 17:37) [10]

ToWebErr
> А посчитать?


Что посчитать то???????
Вот и расскажи, я же прошу помощи, если знаешь как реализовать, то подскажи пожалуйста. А посчитать слова, я вообще не имею понятия как ты это себе представляешь, с помощью подсчитывания определить какое слово выделено.

ToPolevi:
Спасибо за подсказку. Я что-то совсем не додумался, из-за огромного напряжения, в MSDN`е поискать.


 
Vit@ly ©   (2004-03-24 18:13) [11]

Может быть я чего-то не догоняю, но по-моему мышь(все-таки) находится не над словом, а над контролом. А отсюда и выводы. Забирать текст целиком, а затем по позиции мыши на контроле парсить строку.


 
Reals ©   (2004-03-24 19:38) [12]

To Vit@ly:
Ага, вот теперь понятно чуть стало.
Спасибо!



Страницы: 1 вся ветка

Текущий архив: 2004.05.16;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.037 c
3-1082704507
pet600
2004-04-23 11:15
2004.05.16
Oracle 9 + dbExpress (D7)


3-1082345098
Orange
2004-04-19 07:24
2004.05.16
Сохранение базы данных


1-1083138138
Романов Р.В.
2004-04-28 11:42
2004.05.16
Помогите оптимизировать код


6-1080431713
МЕМ
2004-03-28 03:55
2004.05.16
Fastnet


4-1079983789
Ангел.
2004-03-22 22:29
2004.05.16
LoadAccelerators





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский