ImageSearch命令失败

问题描述 投票:1回答:2

我正在尝试创建一个热键,它将找到谷歌工作表“工具”菜单,单击它,向下移动几个像素,然后单击脚本编辑器。我可以在谷歌表中做到这一点,但它没有通用的键绑定,我必须制作一个宏,我宁愿它只是普遍的。

SC163:: 
{
    ImageSearch, FoundX, FoundY, 0, 0, A_ScreenWidth, A_ScreenHeight,  C:\Users\xx\Documents\AHK Scripts\gsheets-tools.bmp

    if ErrorLevel = 2
        tooltip Could not conduct the search.
    else if ErrorLevel = 1
        tooltip Image could not be found on the screen.
    else
        {
            mousemove, %FoundX%, %FoundY%, 50
            tooltip The image was found at %FoundX%x%FoundY%.
        }
    return
}

直到我硬编码整个图像名称才抛出错误2。现在它只会抛出错误1,即使我打开了三张纸(每个显示器上有一张)。 BMP不是这里使用的最佳格式吗?我试过用

ImageSearch, FoundX, FoundY, 0, 0, A_ScreenWidth, A_ScreenHeight, *n30 C:\Users\xx\Documents\AHK Scripts\gsheets-tools.bmp

看看添加这个限额是否有帮助,但失败了。有关正确使用图像搜索的提示吗?这不是一些复杂的游戏功能,只是试图找到一个工具栏并点击它!

autohotkey
2个回答
2
投票

尝试将*n30改为*30

此外,默认情况下,ImageSearch坐标是每个活动窗口而不是整个桌面,因此使用A_ScreenWidthA_SreeenHeight可能会有问题。虽然如果窗口在主屏幕上最大化,这不是问题,但如果它没有最大化或在具有不同分辨率的屏幕上,则可能会出现问题。如果它没有最大化,它可能正在搜索超出显示区域的区域,这可能是一个问题。

可能是另一个问题(未经验证)可能与Windows缩放有关。很多时候2160p显示器默认为200%缩放(或者是150%?w / e)。

由于您使用的是BMP图像,因此您可能需要验证它是否已保存为16位或更高版本。

来自帮助文件的引人注目的引用:

所有操作系统均支持GIF,JPG,BMP,ICO,CUR和ANI图像(BMP图像必须为16位或更高)。

. . .

要搜索的区域必须是可见的;换句话说,不可能搜索隐藏在另一个窗口后面的窗口的区域。相比之下,通常可以检测到位于鼠标光标下方的图像。游戏光标就是一个例外,它在大多数情况下会阻挡它们下方的任何图像。


0
投票

我建议你使用它来进行图像搜索https://www.youtube.com/watch?v=aWRAtvJq9ZE这很简单,效果很好!

© www.soinside.com 2019 - 2024. All rights reserved.