Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
tik Гость
|
Добавлено: Пт Дек 10 2004 22:14 Заголовок сообщения: Как из моей проги послать команду нажатия кнопки мыши |
|
|
Есть необходимость в функции которая из моей проги напрямую посылает команды нажатия кнопок мыши другому окну. Пока смог только через непосредственно курсор:
SetCursorPos(x,y);
mouse_event(MOUSEEVENTF_ABSOLUTE | MOUSEEVENTF_LEFTDOWN | 0,0,0,0);
сначала делам активным окно , потом эмулируем нажатие.
Но хотелеось бы напрямую.
попробовал так, но оно тока моей проге отсылается...
HWND w ;
w = (HWND)m_hwnd;
LPARAM lparam = 10;
WPARAM wparam = 10;
::SendMessage(w, WM_LBUTTONDOWN, wparam, lparam);
И если можно поподробней чуть-чуть ...я тока начал изучать програмирование. |
|
Вернуться к началу |
|
|
GeX
Зарегистрирован: 03.01.2004 Сообщения: 60 Откуда: Россия, Иркутск
|
Добавлено: Ср Дек 15 2004 07:06 Заголовок сообщения: |
|
|
В другой процесс можно послать сообщение только с помощью PostThreadMessage. Не углубляясь в подробности последовательность действий: Узнать HWND окна под точкой где предполагается клик, функцией GetWindowThreadProcessId получить ThreadId нити, если он равен GetCurrentThreadId то обычный PostMessage, если нет то PostThreadMessage. |
|
Вернуться к началу |
|
|
Гость
|
Добавлено: Вт Дек 21 2004 12:58 Заголовок сообщения: |
|
|
А почему собссно не воспользоваться
Код: |
BOOL PostMessage(
HWND hWnd,
UINT Msg,
WPARAM wParam,
LPARAM lParam
);
|
? |
|
Вернуться к началу |
|
|
|