这个原文翻译的有问题!!!!

PixelSearch

在屏幕某个区域中搜索指定颜色所在的像素.

PixelSearch, OutputVarX, OutputVarY, X1, Y1, X2, Y2, ColorID [, Variation, Fast|RGB]

参数

OutputVarX/Y

用来保存首个匹配 ColorID 像素的 X 和 Y 坐标 (如果没有发现匹配, 则此变量被置空). 坐标相对于活动窗口, 除非曾使用 CoordMode 改变了这个设置.

其中一个或两个参数都可以留空, 此时可以使用 ErrorLevel (请参阅下面) 来判断是否找到了匹配.

X1, Y1

要搜索的矩形区域的左上角的 X 和 Y 坐标, 可以为 表达式. 坐标相对于活动窗口,除非曾使用 CoordMode 改变了这个设置.

X2, Y2

要搜索的矩形区域的右下角的 X 和 Y 坐标, 可以为 表达式. 坐标相对于活动窗口, 除非曾使用 CoordMode 改变了这个设置.

ColorID

要搜索的十进制或十六进制的颜色 ID, 使用蓝绿红 (BGR) 格式, 可以为 表达式. 颜色 ID 可以使用 Window Spy (可从托盘菜单打开) 或 PixelGetColor 来确定. 例如:0x9d6346.

Variation

一个介于 0 和 255 (包含的) 之间的数字, 用于表示此颜色红/绿/蓝成分强度在每个方向上允许的渐变值 (可以为 表达式). 此参数用于需要寻找的颜色渐变值可能变化时. 如果指定 255 为浮动的渐变值, 则匹配所有颜色. 默认渐变值为 0.

Fast|RGB

此参数可以包含单词 Fast, RGB 或同时包含两者 (同时包含两者时它们之间请用空格分隔; 即 Fast RGB).

Fast: 使用快速的搜索方法, 在大多数情况下此方法可以明显减少搜索时消耗的 CPU 时间. 尽管此方法支持颜色深度低至 8 位 (256 色), 不过在 24 位或 32 位颜色深度下此快速模式执行地更好. 如果屏幕的颜色深度为 16 位或更低, 则 Variation 参数在慢速模式和快速模式的行为可能有轻微的差异. 最后, 快速模式按行搜索屏幕 (从上往下) 而不是按列. 因此, 如果屏幕上有多个匹配的像素, 则快速模式可能找到一个和慢速模式不同的像素.

RGB: 把 ColorID 解释为 RGB 值而不是 BGR. 即交换了其中的红色和蓝色的成分.

ErrorLevel

[v1.1.04+] 此命令在搜索遇到问题时会抛出异常. 想了解更多信息, 请参阅 运行时错误.

如果在指定的区域找到指定的颜色, 则 ErrorLevel 被设置为 0, 没有找到则为 1, 而如果在命令执行过程中遇到问题使搜索无法进行则为 2.

备注

要搜索的目标区域必须是可见的; 换句话说, 无法搜索隐藏在其他窗口背后的窗口区域. 与之相比, 鼠标光标下方的像素颜色通常可以检测出来. 例外情况是游戏的指针, 在大多数情况下它会隐藏在它下方的任何像素.

对于慢速模式: 默认情况下从区域左上角的像素开始搜索, 在垂直方向上检查下面所有像素以寻找匹配. 如果没有找到匹配, 则继续往右逐列搜索, 直到找到一个匹配的像素. 通过交换参数列中 X1X2 的位置, 可以使默认的从左往右搜索反向进行. 换句话说, 如果 X1 大于 X2, 搜索会从右往左进行, 从 X1 开始. 同样地, 如果 Y1 大于 Y2, 则从区域底部而不是顶部开始搜索每列像素. 最后, 当需要搜索的目标区域很大而且快速的重复搜索, 这可能会占用大量的 CPU 时间. 为了减轻这种情况, 请保持目标区域的大小为最小值.

相关

PixelGetColor, ImageSearch, CoordMode, MouseGetPos

示例

PixelSearch, Px, Py, 200, 200, 300, 300, 0x9d6346, 3, Fast
if ErrorLevel
    MsgBox, That color was not found in the specified region.
else
    MsgBox, A color within 3 shades of variation was found at X%Px% Y%Py%.
完整的函数:CreateImageButton HWND Options Margins 0 有三个需要输入的参数 第一个是按钮的句柄值 必填 第二个是个数组 必填 第三个是按钮的边界宽度 可填值 0 1 2 3 4 值越高边框越宽 不填的话默认为0 ;这是一个简单事例: ;创建一个普通的按钮 对比用: Gui Add Button w200 Button 0 ; 再创造出实验的按钮: { hwndHBT1 貌似是取得该按键的句柄 hwnd是固定的 就像 g v 值存在变量HBT1里} Gui Add Button w200 hwndHBT1 Button 1 ; 编写出函数的第二个参数: BT1Options : [{BC: "A00000|FF00FF" TC: "White" 3D: 0 G: 1}] ;这个代表普通状态下 按钮的样式 BT1Options[2] : {BC: "600000" TC: "Lime" 3D: 0 G: 0} ;这个代表鼠标悬在按钮上方状态下 按钮的样式 ;是个数组 下边是具体含义 格式直接按照他这样来 ;1 数组序号 也就是 BT1Options[2] 里边的 2 的含义: ; 1 代表普通状态下 ; 2 代表鼠标悬停在按钮上 不按下 ; 3 代表鼠标按住按钮 ; 4 代表按钮在 disable 状态下 按钮无效化 ; 5 代表按钮在 Default 状态下 按钮默认 ; 6 估计用不上 直接上老外的原文吧:< used only on tablet computers ; 其中数组的第一个必须有 也就是上边的BT1Options 后边的根据需要添加 ; ;2 BC是Background Color的缩写 就是代表按钮的颜色 ; 使用的是RBG色 例如:00FF00 或者HTML色 例如"Red" ; "|" 前边的 也就是上边的"A00000" 外围颜色 后边的是中心颜色 ; 也可以里外用一种颜色直接 像这样 BC: "600000" ; ;3 TC是Text Color的缩写 也就是按钮上边文字的颜色 ; 参照背景颜色BC ; ;4 3D表示的是按钮的样式 大家自己改改看就知道了: ; 0 普通 ; 1 中间鼓起 ; 2 垂直纹理 ; 3 水平纹理 ; 9 老外写的背景图片 大家自己试试吧 原文:BC contains the picture"s path or HBITMAP handle ; 默认为 0 ; ;5 G代表Gamma Correction 图像灰度矫正 这个太专业 我也不懂 大家自己试试吧 ; 0 表示否 ; 1 代表是 ; 默认为 0 ;解释完毕 ; ;调用函数 参数依次填入 这里的第三个函数"边界宽度"就缺省了 默认0 CreateImageButton HBT1 BT1Options ">完整的函数:CreateImageButton HWND Options Margins 0 有三个需要输入的参数 第一个是按钮的句柄值 必填 第二个是个数组 必填 第三个是按钮的边界宽度 可填值 0 1 2 3 4 值越高边框越宽 不填的话默认为0 ;这是一个简单事 [更多]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值