Вниз
Скачать: CL | DM;

Автоклик на форме!!! не кликает!!!!   Найти похожие ветки 

← →
Denis_Visma   (2004-06-28 14:21) [0]

Уважаемые мастера! Проблема с эмулированием клика мышки на одном окне...
вообщем получаю хендл окна я вот каким образом
var
 aName: array [0..255] of Char;
begin
 hWnd := WindowFromPoint(CrPos);
 Label1.Caption := "Handle :  " + IntToStr(hWnd);
 if Boolean(GetClassName(hWnd, aName, 256)) then
   Label2.Caption := "ClassName :  " + string(aName)
 else
   Label2.Caption := "ClassName :  not found";

то есть хендл окна под мышкой...что самое интересное смотрю хендл окна через winsight32 (что поставляеться вместе с делфи), то хендл такой же...

затем кликаю вот так
sendmessage(hwnd, WM_LBUTTONDOWN, MK_LBUTTON, rPos.X + rPos.Y);
sendmessage(hwnd, WM_LBUTTONUP, MK_LBUTTON, rPos.X + rPos.Y);

и ни в какую не хочет кликать...дело в том что при клике на окне на котором мышка находиться должен открываться iexplorer но он не открываеться то есть не кликает мышка...
на любом другом окне кликает...
в чем может быть проблема?
Большое спасибо за советы.


← →
Sandman25 ©   (2004-06-28 14:28) [1]

PostMessage?


← →
Denis_Visma   (2004-06-28 14:30) [2]

пробовал...не помогает....


← →
wicked ©   (2004-06-28 16:39) [3]


> sendmessage(hwnd, WM_LBUTTONDOWN, MK_LBUTTON, rPos.X + rPos.Y);
> sendmessage(hwnd, WM_LBUTTONUP, MK_LBUTTON, rPos.X + rPos.Y);

а это (выделенное) что такое?... имхо бред...
нужно например (rPos.Y shl 16) or (rPos.X and $ffff)...
ну или mouse_event / SendInput использовать... даже предпочтительней в данном случае будет....

ЗЫ и не sendmessage, а SendMessage...


← →
Игорь Шевченко ©   (2004-06-28 16:54) [4]


> ЗЫ и не sendmessage, а SendMessage


PostMessage все-таки более привычен (даже для имитации) для аппаратных событий


← →
GrayFace ©   (2004-06-29 06:55) [5]

Denis_Visma
Из твоего описания получается такая картина:
hWnd := WindowFromPoint(CrPos);
...
sendmessage(hwnd, WM_LBUTTONDOWN, MK_LBUTTON, rPos.X + rPos.Y);
sendmessage(hwnd, WM_LBUTTONUP, MK_LBUTTON, rPos.X + rPos.Y);

А должна быть такая:
sendmessage(IEwnd, WM_LBUTTONDOWN, MK_LBUTTON, rPos.X + rPos.Y);
sendmessage(IEwnd, WM_LBUTTONUP, MK_LBUTTON, rPos.X + rPos.Y);



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.019 c
1-1090827149
Delphi5.01
2004-07-26 11:32
2004.08.08
Preview QReport


14-1090331602
Ega23
2004-07-20 17:53
2004.08.08
О кнопочках


14-1090211747
VictorT
2004-07-19 08:35
2004.08.08
И снова исчерпан лимит трафика на дремучем форуме :(


14-1090582484
Fishka
2004-07-23 15:34
2004.08.08
Тесты на знание MS SQL и Delphi на русском языке


1-1090599763
kiki
2004-07-23 20:22
2004.08.08
что такое HBitmap?




   Наверх