Where is my way?

 

delphi 发送鼠标点击消息到指定窗口

SendMessage(handle,WM_LButtonDown,0,lparam)

主要是计算lparam

msdn中介绍坐标x在低位,y在高位

实现方法就是

x+(y左移16位)

procedure Play(pa,pb:TPoint);
var
Gameh:HWND;
lparam:DWORD;
p1,p2:TPoint;
begin
///第一点坐标
///用spy++得到数据
///<summer>起始点为x=272,y=99</summer>
/// pa.x得到偏移地址
p1.X:=272+48*pa.X-30;p1.Y:=99+48*pa.Y-30;
p2.X:=272+48*pb.X-30;p2.Y:=99+48*pb.Y-30;
//lparam 高16位是y 低16位是 x 算法就是 x+y左移16位
lparam:=p1.X+ p1.Y shl 16;
//单击点1
SendMessage(gameH,WM_LBUTTONDOWN,0,lparam); //鼠标按下
sendMessage(gameh,WM_LBUTTONUP, 0,lparam); // 鼠标抬起



posted on 2011-10-03 00:35  ManLoveGirls  阅读(5066)  评论(0编辑  收藏  举报

导航