找回密码
 加入
搜索
查看: 757|回复: 3

[AU3基础] [已解决]关于函数MouseCoordMode的用法

[复制链接]
发表于 2022-1-5 22:28:18 | 显示全部楼层 |阅读模式
本帖最后由 smooth 于 2022-1-10 12:06 编辑

关于函数MouseCoordMode的用法,帮助里能搜到的资料就下面这个表,也没有例子。百度和论坛里也搜不到相关信息。一直搞不懂,什么叫坐标相对位置?
比如,我现在电脑是1920*1080,鼠标模拟点击(800,600)这个位置,如果我加入Opt("MouseCoordMode", 1)这句代码,是不是到了屏幕小一点的电脑,会自动调整为(700,500)(假设),这样不管什么电脑上用,点击位置就不会出错?
还有,啥叫客户区?
请大佬指点,谢谢!
MouseCoordMode设置用于鼠标函数的坐标参照,可以是绝对位置也可以是相对当前激活窗口的坐标位置.
0 = 相对激活窗口的坐标
1 = 屏幕的绝对位置(默认)
2 = 相对激活窗口客户区的坐标
发表于 2022-1-6 00:20:59 | 显示全部楼层
0 = 相对坐标:以窗口的左上角为起点(0,0);
1 =绝对坐标:以电脑屏幕的左上角为起点(0,0);
客户区:一般指窗口 排除标题栏和边框所占用的区域,就是客户区。

如果鼠标模拟点击(800,600)这个位置,加入Opt("MouseCoordMode", 1),就相同大小的屏幕而言,当屏幕分辨率低时,在屏幕上显示的像素少,单个像素尺寸比较大。 到了屏幕小一点的电脑,如果分辨率相同,单个像素尺寸就小点,坐标是不会自动调整成(700,500)的。所以如果不考虑主题,DPI等的影响,点击的位置几乎是一样的。
这些知识,我也是在论坛上学习的,解释不到位,或者不对的地方,希望其他大佬可以补充。
 楼主| 发表于 2022-1-6 08:31:58 | 显示全部楼层
itzyx 发表于 2022-1-6 00:20
0 = 相对坐标:以窗口的左上角为起点(0,0);
1 =绝对坐标:以电脑屏幕的左上角为起点(0,0);
客户区 ...

谢谢!我的本意是,模拟鼠标点击,到了不同尺寸的显示器上,都能准确适用,所以想了解一下相对坐标的原理。看来相对坐标不是解决这个问题的。
发表于 2022-1-6 11:15:37 | 显示全部楼层
smooth 发表于 2022-1-6 08:31
谢谢!我的本意是,模拟鼠标点击,到了不同尺寸的显示器上,都能准确适用,所以想了解一下相对坐标的原理 ...

加入Opt("MouseCoordMode", x) 是对于坐标操作最有效的设置,itzyx 已经解释得很清楚了,肯定也是解决你的模拟点击的问题。
编写一个大家都可重现你问题的代码,可以得到直接的帮助。
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-5-3 14:01 , Processed in 0.071006 second(s), 19 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表