易语言如何获取鼠标在窗口中的位置

不是在全屏幕中的位置

第1个回答  2014-08-25
纯API和核心支持库操作,无需模块,创建个时钟,源码如下:

.版本 2

.DLL命令 GetParent, 整数型, "user32", "GetParent", , $(b)判断指定窗口的父窗口 父窗口的句柄。如窗口没有父,或遇到错误,则返回零。会设置GetLastError
.参数 窗口句柄, 整数型, , 欲测试的窗口的句柄;

.DLL命令 GetWindowRect, 整数型, "user32", "GetWindowRect"
.参数 窗口句柄, 整数型
.参数 矩形区域, 矩形_

.版本 2

.数据类型 矩形_, 公开, RECT
.成员 左边, 整数型, , , Left
.成员 顶边, 整数型, , , Top
.成员 右边, 整数型, , , Right
.成员 底边, 整数型, , , Bottom

.版本 2
.支持库 eAPI

.子程序 __启动窗口_创建完毕

时钟1.时钟周期 = 2000

.子程序 _时钟1_周期事件
.局部变量 hwnd, 整数型
.局部变量 hwnd_P, 整数型
.局部变量 rect, 矩形_

hwnd = 取鼠标所在窗口句柄 ()
hwnd_P = GetParent (hwnd)
GetWindowRect (hwnd_P, rect)
.如果 (hwnd_P ≠ 0)
输出调试文本 (“左上顶角坐标:(” + 到文本 (rect.左边) + “,” + 到文本 (rect.顶边) + “)”)
输出调试文本 (“左下顶角坐标:(” + 到文本 (rect.左边) + “,” + 到文本 (rect.底边) + “)”)
输出调试文本 (“右上顶角坐标:(” + 到文本 (rect.右边) + “,” + 到文本 (rect.顶边) + “)”)
输出调试文本 (“右下顶角坐标:(” + 到文本 (rect.右边) + “,” + 到文本 (rect.底边) + “)”)
输出调试文本 (“————————————————————”)
.否则
输出调试文本 (“窗口无父窗口”)
.如果结束
这样可以么?追问

不是鼠标所在窗口的位置,是窗口中鼠标的位置,横坐标和纵坐标

第2个回答  2014-08-25
调用API
我有官方杂志API帮助文档,要的话给你追问

。。那你发啊

追答

发后采纳

第3个回答  推荐于2016-04-12
.子程序 __启动窗口_创建完毕
输出调试文本 (取鼠标水平位置() - _启动窗口.左边 ,取鼠标垂直位置() - _启动窗口.顶边)

是这句吗?本回答被提问者采纳