微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

pyautogui.position的返回值与pyautogui.locateOnScreen的返回值是否有区别?

如何解决pyautogui.position的返回值与pyautogui.locateOnScreen的返回值是否有区别?

我想知道屏幕上特定窗口中的像素是否具有特定颜色。因此,我使用了pyautogui模块的pixelMatchesColor()函数。但是,为了考虑到感兴趣窗口位置的变化(我们称其为win1),我截取了屏幕截图,并裁剪了一部分“ win1”,该部分从未使用pyautogui.screenshot()函数进行更改。然后,将pyautogui.locateOnScreen()函数添加到我的主代码中,以获得“ win1”的坐标。使用感兴趣的像素(“ pix1”)相对于“ win1”的相对坐标以及“ win1”的绝对坐标,我能够找出“ pix1”的绝对坐标。然后将这些坐标传递给pixelMatchesColor()功能。但是,它返回了以下错误https://prnt.sc/up67cp。稍后,当我尝试将pyautogui.position()函数的返回值传递给pixelMatchesColor()时,我没有遇到任何错误,并获得了预期的True或False值。 我检查了一下文档,发现position()pixelMatchesColor()输出元组。为什么为什么只对其中一个发生错误

这是我的代码段:

`尝试:

    (X,Y,Z,A) = py.locateOnScreen("health bar.png",confidence = 0.6)
    (A,B) = py.position()   
   
       
    t = py.pixelMatchesColor(A-4,B+3,(124,7,7),tolerance = 45)#Returns True or False         
    s = py.pixelMatchesColor(X + 328,Y - 250,tolerance = 45)# returns error
    print(s)
    print(t)
    if s == True:
        PressKey(0x100)
        time.sleep(0.1)
        ReleaseKey(0x100)
except TypeError:
    time.sleep(2)
    continue`

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。