以下仅为演示用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

 

声明:站内资源为整理优化好的代码上传分享与学习研究,如果是开源代码基本都会标明出处,方便大家扩展学习路径。请不要恶意搬运,破坏站长辛苦整理维护的劳动成果。本站为爱好者分享站点,所有内容不作为商业行为。如若本站上传内容侵犯了原著者的合法权益,请联系我们进行删除下架。