Python pywin32:使用坐标获取颜色
我写这段代码是为了让鼠标点击x,y位置100200,然后按下backspace按钮:Python pywin32:使用坐标获取颜色,python,colors,pywin32,Python,Colors,Pywin32,我写这段代码是为了让鼠标点击x,y位置100200,然后按下backspace按钮: import win32api, win32con import time def click(x,y): win32api.SetCursorPos((x,y)) win32api.mouse_event(win32con.MOUSEEVENTF_LEFTDOWN,x,y,0,0) win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP,x,
import win32api, win32con
import time
def click(x,y):
win32api.SetCursorPos((x,y))
win32api.mouse_event(win32con.MOUSEEVENTF_LEFTDOWN,x,y,0,0)
win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP,x,y,0,0)
def press_back():
win32api.keybd_event(0x08,0,0,0) #click backspace
time.sleep(0.1)
win32api.keybd_event(0x08,0,2,0) #release backspace
click(100,200)
press_back()
我现在要做的是检查100200处的颜色是否为红色。我该怎么做
编辑:
我有解决办法
color = win32gui.GetPixel(win32gui.GetDC(win32gui.GetActiveWindow()), 100 , 200)
无论如何,谢谢你的回答
color = win32gui.GetPixel(win32gui.GetDC(win32gui.GetActiveWindow()), 100 , 200)
你会得到一个整数,这对像我这样的人来说可能不是很友好
如果需要RGB元组,可以检查以下答案:
最后,你要检查颜色是否是红色,如果你也接受类似的颜色,而不仅仅是纯红色(即(255,0,0)),那就不那么容易了
def rgbint2rgbtuple(RGBint):
blue = RGBint & 255
green = (RGBint >> 8) & 255
red = (RGBint >> 16) & 255
return (red, green, blue)