Символ под курсором в чужом окне - VB
Формулировка задачи:
день добрый, спецам. сразу прошу прощения за возможно ламерский вопрос. а вопрос вот в чём - надо прописать в своём textbox'се символ из другого окна(имменно не из своего). всё что мне удалось 'накопать' - это то, что надо использовать api-функцию WindowFromPoint и вероятно прописать WM_GETTEXT. ясно также, что надо сначало определить координаты курсора(это просто), а вот что прописать далее - тут уже у меня тупик пятый день. если у кого есть мысли, большая посьба помогите. вероятно надо сначало определить hwnd - окна и послать SendMessage, а вот как конкретно это сделать - тут у меня тупик.
Решение задачи: «Символ под курсором в чужом окне»
textual
Листинг программы
- Type POINT
- X As Long
- Y As Long
- End Type
- Function GetChar() As String
- Dim pt as POINT, hWin as Long, ppt As Long, pos As Long
- GetCursorPos(pt)
- hWin = WindowFromPoint(pt)
- ScreenToClient(hWin, pt)
- ' For standatd edit control
- ppt = (pt.X And &HFFFF) Or (pt.Y And &HFFFF) * &H10000
- pos = (SendMessage(hWin, EM_CHARFROMPOS, 0&, ByVal ppt) And &HFFFF)
- ' For rich edit control:
- ' pos = SendMessage(hWin, EM_CHARFROMPOS, 0&, pt)
- SendMessage(hWin, WM_GETTEXT, pos + 1, buff)
- GetChar = Mid(buff, pos + 1, 1)
- End Function
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д