首先我们来看下实例代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
.版本 2 .支持库 spec .子程序 _窗口1_创建完毕 kk = API_SetWindowLong (标签1.取窗口句柄 (), -4, 到整数 (&Mycallback)) .子程序 Mycallback, 整数型 .参数 Hwnd .参数 uMsg .参数 消息参数WP .参数 消息参数LP .局部变量 msg, MSG .局部变量 pt, POINTAPI .如果真 (uMsg = 512) ' 移动消息 API_GetMessage (msg, Hwnd, 0, 0) pt.横向位置 = msg.pt.横向位置 pt.纵向位置 = msg.pt.纵向位置 API_ScreenToClient (Hwnd, pt) 调试输出 (到文本 (pt.纵向位置) + “/” + 到文本 (pt.横向位置)) .如果真结束 返回 (API_CallWindowProc (kk, Hwnd, uMsg, 消息参数WP, 消息参数LP)) |
用到api
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
.版本 2 .DLL命令 API_GetMessage, 整数型, "user32", "GetMessageA", , 从线索消息队列中返回一条消息 .参数 lpMsg, MSG .参数 hwnd, 整数型 .参数 wMsgFilterMin, 整数型 .参数 wMsgFilterMax, 整数型 .DLL命令 API_TranslateMessage, 整数型, "user32", "TranslateMessage", , 转换虚拟关键字消息 .参数 lpMsg, MSG .DLL命令 API_DispatchMessage, 整数型, "user32", "DispatchMessageA", , 向窗口发送消息 .参数 lpMsg, MSG .DLL命令 API_SetWindowLong, 整数型, "user32", "SetWindowLongA", , 在窗口结构中为指定的窗口设置信息 指定数据的前一个值 .参数 hwnd, 整数型 .参数 nIndex, 整数型 .参数 dwNewLong, 整数型 .DLL命令 API_CallWindowProc, 整数型, "user32", "CallWindowProcA", , 将消息传答窗口函数 .参数 lpPrevWndFunc, 整数型 .参数 hwnd, 整数型 .参数 msg, 整数型 .参数 wParam, 整数型 .参数 lParam, 整数型 .DLL命令 API_ScreenToClient, 整数型, "user32", "ScreenToClient", , 判断屏幕上一个指定点的客户区坐标 非零表示成功,零表示失败 .参数 hwnd, 整数型, , 一个窗口的句柄,该窗口定义了要使用的客户区坐标系统 .参数 lpPoint, POINTAPI, , POINTAPI,屏幕坐标系统中包含了屏幕点的结构。这个函数会随同相应的客户区坐标(由hwnd决定)载入结构; |
用到数据类型
1
2
3
4
5
6
7
8
9
10
11
12
13
|
.版本 2 .数据类型 POINTAPI, , 坐标; .成员 横向位置, 整数型 .成员 纵向位置, 整数型 .数据类型 MSG .成员 hwnd, 整数型 .成员 message, 整数型 .成员 wParam, 整数型 .成员 lParam, 整数型 .成员 time, 整数型 .成员 pt, POINTAPI |
以上就是给大家介绍的关于易语言获取窗口坐标的实际方法,感谢大家对服务器之家的支持。
原文链接:https://www.cnblogs.com/qq32175822/p/3327740.html