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

我用postmessagea 分别向两个后台窗口发送鼠标信息,能成功
但是用易语言自带的 取鼠标水平位置() 和 取鼠标垂直位置() 得到的是桌面鼠标位置
而非后台窗口中鼠标位置
我想询问下如何获取 后台窗口中鼠标位置?

第1个回答  2012-02-11
你可以用
取鼠标水平位置()得到鼠标相对桌面的水平位置
这个位置减去窗口的左边,如果大于零代表鼠标在窗口上,或者在窗口右边
然后再判断一下,这个数是不是比窗口左边和窗口宽度相加的数大,如果比这个数小则代表鼠标一定在窗口上(前提是你要把顶边跟这个一样的方法,进行确定后)追问

我一再强调 取鼠标水平位置()是不能够获取到后台鼠标位置的 - -

追答

表示这个后台鼠标位置到底是个什么定义?窗口的坐标?桌面的坐标?或者我不知道的。。。

第2个回答  2012-02-10
获取 后台窗口 位置?
.版本 2
.支持库 shellEx
.支持库 eAPI

.程序集 窗口程序集1
.程序集变量 窗口句柄, 整数型

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

注册热键 (取窗口句柄 (), 标签1.取窗口句柄 (), 0, #F5键)

.子程序 _标签1_反馈事件, 整数型
.参数 参数一, 整数型
.参数 参数二, 整数型

窗口句柄 = 取鼠标所在窗口句柄 ()追问

- -

追答

不行么?

追问

不行 请仔细看题

第3个回答  2012-02-09
我给你补充下说明,那个人的意思是叫你
先得到那个窗口在屏幕的左边和顶边
然后再得到鼠标的左边和顶边
鼠标的左边-窗口的左边=鼠标在窗口内的左边
鼠标的顶边-窗口的顶边=鼠标在窗口内的顶边追问

我知道 我也是这样用的 但是 得到的鼠标位置 一直处于窗口外 而非那两个后台窗口里面

追答

你确认了你取的窗口左边顶边不是0吗,或者鼠标在窗口里

相似回答