获取指定的 x,y 坐标处像素的颜色.
PixelGetColor, OutputVar, X, Y [, Alt|Slow|RGB]
OutputVar | 变量名称, 用于保存十六进制的蓝绿红 (BGR) 格式的颜色 ID. 例如, 紫色的颜色 ID 为 0x800080, 因为其蓝色和红色通道的强度为 80, 而绿色通道的强度为 00. |
X, Y | 目标像素的 X 和 Y 坐标, 可以为 表达式. 如果没有使用 CoordMode, 默认情况下坐标相对于活动窗口. |
Alt|Slow|RGB | 此参数可以包含零个或多个下列单词.如果含有多个单词, 它们之间请用空格分隔 (例如 Alt RGB). Alt [v1.0.43.10+]: 用另一种方法获取颜色, 当在特殊类型的窗口中正常的方法获取到无效或错误的颜色时, 应考虑使用这种方法.此方法比正常方法大约慢 10%. Slow [v1.0.43.10+]: 使用一种更精细复杂的方法获取颜色, 在某些全屏应用程序中其他方法失败时, 此方法可能有效. 此方法比正常方法大约慢三倍. 请注意: Slow 方法优先于 Alt 方法, 所以此时不需要指定 Alt. RGB: 获取 RGB 格式的颜色值而不是 BGR 格式. 即交换了其中的红色和蓝色的通道. 要让获取的颜色适用于 WinSet, Gui, Progress, 和 SplashImage, 这很有用. |
如果出现错误, ErrorLevel 被设置为 1, 否则为 0.
像素必须是可见的; 换句话说, 无法获取隐藏在其他窗口背后的窗口的像素颜色. 而在鼠标指针下方的像素颜色通常可以被检测出来. 例外情况是游戏的指针, 在大多数情况下它会隐藏在它下方的任何像素.
使用 Window Spy (从托盘图标菜单打开) 或者参照本页底部的示例可以确定当前屏幕上的颜色.
已知的局限:
PixelSearch, ImageSearch, CoordMode, MouseGetPos
^!z:: ; Control+Alt+Z hotkey.
MouseGetPos, MouseX, MouseY
PixelGetColor, color, %MouseX%, %MouseY%
MsgBox The color at the current cursor position is %color%.
return