以下仅为演示用ahk自带命令的找图示例,但并不推荐使用自带找图功能。
需要找图功能建议使用FindText函数实现,FindText功能强速度快还不用带图片文件。网站搜索FindText查看相关示例内容
; 以下仅为演示用ahk自带命令的找图示例,但并不推荐使用自带找图功能。 ; 需要找图功能建议使用FindText函数实现,FindText功能强速度快还不用带图片文件。网站搜索FindText查看相关示例内容 SysGet, VirtualWidth, 78 ; 虚拟屏幕的宽度和高度, 单位为像素. 虚拟屏幕是所有监视器的边框 SysGet, VirtualHeight, 79 ; 度量是虚拟屏幕左上角的坐标 ; F1简易版 F1:: CoordMode Pixel ; 设置找图坐标系为全屏找图 ImageSearch, 返回坐标X, 返回坐标Y, 0, 0, VirtualWidth, VirtualHeight, C:/截图.png if (ErrorLevel=0) { ; 如果没有报错就执行,=1是没找到 =2是其他错误 MsgBox 找到了`n`nX坐标:%返回坐标X%,Y坐标:%返回坐标Y% } else { MsgBox 没找到 } Return ; F2复杂版【带鼠标点击和归位】视频教程:https://www.bilibili.com/video/BV1mf4y1v7nQ F2:: __ImageFilePath := "C:\截图.png" ; 截图的位置 Gui, Add, Picture,hwnd__mypic,%__ImageFilePath% ; 用截图创建一个Gui控件实现鼠标归位 if FileExist(__ImageFilePath) { Controlgetpos,,,__img_w,__img_h,,ahk_id %__mypic% ; __img_w和__img_h用来存储控件的宽和高,ahk_id表示控件的唯一id CoordMode Pixel, Screen ; 设置找图坐标系为全屏找图 ImageSearch, __FoundX, __FoundY, 0, 0, VirtualWidth, VirtualHeight,%__ImageFilePath% ; 识别图片的左上角的xy坐标存储在__FoundX, __FoundY. CoordMode Mouse, Screen ; 设置坐标模式, 相对于屏幕 PicX:=__FoundX + __img_w/2 ; 搜索到的图片的x坐标加上截取的图片一半的长度 PicY:=__FoundY + __img_h/2 ; 搜索到的图片的y坐标加上截取的图片一半的宽度 if (ErrorLevel=0) { ; 如果没有报错就执行,=1是没找到 =2是其他错误 MouseGetPos, NowX, NowY ; 获取当前鼠标xy坐标 Click %PicX%, %PicY%, 1 ; 此处为点击找到的目标【1为鼠标点击一次】 Click %NowX%, %NowY%, 0 ; 此处为鼠标返回点击前的位置【0为鼠标不点击】 } else { MsgBox 没找到 } } else { MsgBox 图片文件不存在,请检查截图文件是否存放正确 } Return ; 技巧:路径前的*TransBlack*110分别是无视图片中的纯黑部分,110找图宽容度(0是绝对匹配,越大越宽容) ; ImageSearch, x, y, 2715, 1154, 3816, 1696, *TransBlack *110 C:\green-1.png
声明:站内资源为整理优化好的代码上传分享与学习研究,如果是开源代码基本都会标明出处,方便大家扩展学习路径。请不要恶意搬运,破坏站长辛苦整理维护的劳动成果。本站为爱好者分享站点,所有内容不作为商业行为。如若本站上传内容侵犯了原著者的合法权益,请联系我们进行删除下架。
评论(0)