本课课程通过鼠标钩子获取鼠标屏幕坐标和客户区坐标,其中屏幕坐标通过了两种方法做了演示。我们自定义了数据类型POINT,和MOUSEHOOKSTRUCT结构体。
鼠标钩子获取屏幕坐标
鼠标钩子屏幕句柄 = SetWindowsHookExA (14, 到整数 (&鼠标钩子屏幕坐标回调), 0, 0)
鼠标钩子屏幕坐标回调
.版本 2 .支持库 spec .子程序 鼠标钩子屏幕坐标回调, 整数型, , 获取鼠标屏幕的坐标 .参数 代码值, 整数型 .参数 参数一, 整数型 .参数 参数二, 整数型 .局部变量 a, POINT .局部变量 x, 整数型 .局部变量 y, 整数型 .判断开始 (参数一 = 512) a.x = 取鼠标水平位置 () a.y = 取鼠标垂直位置 () x = a.x y = a.y 调试输出 (到文本 (x) + “,” + 到文本 (y)) 标题 = 到文本 (x) + “,” + 到文本 (y) .默认 .判断结束 返回 (CallNextHookEx (鼠标钩子屏幕句柄, 代码值, 参数一, 参数二))
鼠标钩子客户区坐标
鼠标钩子客户句柄 = SetWindowsHookExA (14, 到整数 (&鼠标钩子客户区坐标回调), 0, 0)
鼠标钩子客户区坐标回调
.版本 2 .支持库 eAPI .子程序 鼠标钩子客户区坐标回调, 整数型, , 获取鼠标客户区的坐标 .参数 代码值, 整数型 .参数 参数一, 整数型 .参数 参数二, 整数型 .局部变量 a, POINT .局部变量 x, 整数型 .局部变量 y, 整数型 .判断开始 (参数一 = 512) a.x = 取鼠标水平位置 () a.y = 取鼠标垂直位置 () ScreenToClient (取鼠标所在窗口句柄 (), a) x = a.x y = a.y 标签1.标题 = 到文本 (x) + “,” + 到文本 (y) .默认 .判断结束 返回 (CallNextHookEx (鼠标钩子屏幕句柄, 代码值, 参数一, 参数二))
鼠标钩子客户区坐标方法2
鼠标钩子客户句柄 = SetWindowsHookExA (14, 到整数 (&鼠标钩子客户区坐标回调), 0, 0)
xxx
.版本 2 .支持库 spec .子程序 鼠标自定义结构体回调, 整数型 .参数 代码值, 整数型 .参数 参数一, 整数型 .参数 参数二, 整数型 .局部变量 鼠标, MOUSEHOOKSTRUCT CopyMemory (鼠标, 参数二, 20) .判断开始 (参数一 = 512) 调试输出 (到文本 (鼠标.pt.x), “,”, 到文本 (鼠标.pt.y)) 标签2.标题 = 到文本 (鼠标.pt.x) + “,” + 到文本 (鼠标.pt.y) .默认 .判断结束 返回 (CallNextHookEx (鼠标自定义结构体, 代码值, 参数一, 参数二))
卸载钩子
.版本 2 UnhookWindowsHookEx (鼠标钩子屏幕句柄) UnhookWindowsHookEx (鼠标钩子客户句柄) UnhookWindowsHookEx (鼠标自定义结构体)
自定义数据类型
.版本 2
.数据类型 POINT
.成员 x, 整数型
.成员 y, 整数型
.数据类型 MOUSEHOOKSTRUCT
.成员 pt, POINT, , , POINT结构对象,保存鼠标在屏幕上的x,y坐标
.成员 hwnd, 整数型, , , 接收到鼠标消息的窗口的句柄
.成员 wHitTestCode, 整数型
.成员 dwExtraInfo, 整数型, , , 指定与本消息联系的额外消息
教程获取下载:
百度网盘链接:https://pan.baidu.com/s/158ikKVjIwaoF4438MG4fhA
提取码:加QQ群:521068947 群文件下载
资源教程交流①群:521068947
511遇见QQ: 272586593