本页为方便阅读而由英文翻译。英文原文是最准确的版本;如两者不一致,以英文原文为准。

如何点击屏幕上的图像

只需让宏看一次按钮的样子,它就能找到这个按钮,并在屏幕上的任何位置点击它。

更新于 2026 年 10 月 1 日 · 在 Myna Recorder 中,点击图像在所有套餐中都免费。

1. 为什么录制的点击会点偏

录制的点击每次都落在屏幕上的同一个位置。只要移动窗口、更改分辨率,或者在另一台电脑上运行宏,这次点击就会落到别的东西上。点击图像则不取决于东西的位置:宏每次都会查找这张图片,并点击它现在所在的位置。

2. 截取图像

打开图片选项卡,按裁剪新区域,在按钮周围拖出一个框,然后给它起个名字。只截取能让它被认出来的部分,例如按钮上的文字和按钮的边缘。图片里如果带有背景,背景一变就会匹配不上。

3. 点击它

在录制选项卡中,打开步骤工具栏里的图像,选择单击它,然后选择你的图片。在脚本选项卡中,它只有一行:

click_crop("Save")

这个步骤最多等待五秒,等图片出现,然后点击它的中心。如果图片始终没有出现,宏会继续执行下一步。加上 on_fail="label" 可以改为跳转到别处,加上 abort=True 则停止运行。

4. 先等待某样东西出现

等待直到可见会让宏一直等到某张图片出现,这样宏就能等待加载缓慢的页面或耗时很长的导出,而不用靠固定的暂停时间去猜:

wait_for("Report ready", timeout_ms=60000)
click_crop("Download")

对于只是有时才会出现的东西,if_image 块只查看一次,只有图片在屏幕上时才运行其中的步骤:

if_image("Update available"):
    click_crop("Remind me later")

5. 找不到图像时

  • confidence= 设置匹配必须有多接近。默认值是 0.8,即 80% 匹配。如果明明在屏幕上的图片没有被找到,就把它稍微调低一点。
  • match="shape" 比较轮廓、忽略颜色,适用于高亮时或在深色主题下会变色的按钮。
  • region=(x, y, width, height) 只在屏幕的某一部分查找,这样更快,也能避开别处相似的图片。
  • x_offset= 和 y_offset= 用于点击图片旁边的位置,例如文字标签旁边的复选框。
  • timeout_ms= 设置持续查找多长时间。

步骤也可以按颜色而不是按图片查找:给它一个颜色范围,它就会作用于该颜色最大色块的中心。

6. 套餐与导出

  • 点击图像、等待图像和颜色匹配在所有套餐中都免费。
  • 在 Basic 和 Pro 套餐中,点击图像的宏可以导出为一个 .exe,图片都包含在文件里。
  • 对于只在屏幕上短暂出现的东西,连拍会对某个区域连续拍摄几秒钟,让你挑选要保留的图片。连拍属于 Basic 和 Pro 套餐。