我想从特定窗口获取Python中特定像素的颜色,女巫在后台,使用它的XY坐标,我使用的是Windows10。 (我正在尝试编写一个脚本,当特定像素发生变化时,将窗口置于前面)
我尝试修改下面的代码,但我无法从其他窗口获取信息,只能从屏幕获取信息。
def get_pixel_colour(i_x, i_y):
import win32gui
i_desktop_window_id = win32gui.GetDesktopWindow()
i_desktop_window_dc = win32gui.GetWindowDC(i_desktop_window_id)
long_colour = win32gui.GetPixel(i_desktop_window_dc, i_x, i_y)
i_colour = int(long_colour)
return (i_colour & 0xff), ((i_colour >> 8) & 0xff), ((i_colour >> 16) & 0xff)
print get_pixel_colour(0, 0)
最佳答案
我遇到了同样的问题,我创建了一个库来使用最小化的窗口,这是完整的代码
https://github.com/mariobarbosa777/minwinpy/blob/master/minwinpy.py
您也必须以管理员 vs-code 和“您的 Windows 名称”身份运行
要解决获取颜色像素问题,请下载 minwinpy.py 并使用以下代码:
from minwinpy import minwinpy
#x, y pixel to get RGB color
pos=[497,72]
WindowsName="Your windows name"
yourWindows= minwinpy(WindowsName)
print (yourWindows.GetPixelRGBColor(pos))
关于python - 从背景窗口获取像素颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60377832/