按键精灵_插件命令:Coler颜色插件
ColorToRGB 颜色转RGB
参数1 字符串型,16进制颜色值
参数2 整数型,返回10进制R分量
参数3 整数型,返回10进制G分量
参数4 整数型,返回10进制B分量
//下面这句是把16进制颜色("0000FF")转换分解到10进制(R:R, G:G, B:B)分量中
Call Plugin.Color.ColorToRGB("ffffFF", R, G, B)
TracePrint R & " " & G & " " & B
GetRGB 得到RGB分量合并值
参数1 整数型,10进制R分量
参数2 整数型,10进制G分量
参数3 整数型,10进制B分量
返回值:字符串型,16进制颜色值
//下面这句是把10进制(R:255, G:0, B:0)分量合并到16进制颜色值变量(Color)中
Color = Plugin.Color.GetRGB(255, 0, 0)
msgbox "得到16进制颜色值:" & color
ColorToHSL 颜色转HSL
参数1 字符串型,16进制颜色值
参数2 整数型,返回10进制H分量
参数3 整数型,返回10进制S分量
参数4 整数型,返回10进制L分量
//色调(H)、饱和度(S)、亮度(L)
//下面这句是把16进制颜色("0000FF")转换分解到10进制(H:H, S:S, L:L)分量中
Call Plugin.Color.ColorToHSL("0000FF", H, S, L)
msgbox H &" " & S &" " & L
CountColor 区域搜索颜色数量
参数1 整数型,屏幕左上角X坐标
参数2 整数型,屏幕左上角Y坐标
参数3 整数型,屏幕右下角X坐标
参数4 整数型,屏幕右下角Y坐标
参数5 字符串型,16进制颜色值
参数6 整数型,相似度
返回值:整数型,颜色数量
//下面这句在屏幕区域范围内查找16进制颜色("0000FF")的数量
NUM = Plugin.Color.CountColor(0, 0, 1024, 768, "FFFFFF",1)
msgbox "颜色(""FFFFFF"")的数量=" & NUM
FindMultiColor 区域多点找色
参数1 整数型,屏幕左上角X坐标
参数2 整数型,屏幕左上角Y坐标
参数3 整数型,屏幕右下角X坐标
参数4 整数型,屏幕右下角Y坐标
参数5 字符串型,第一点16进制颜色值
参数6 字符串型,符合偏移点颜色组(相对第一点位置偏移X坐标|相对第一点位置偏移Y坐标|16进制颜色)
参数7 整数型,相似度
返回值:字符串型,左上角第一点颜色位置坐标
//下面这句在屏幕区域范围内查找多点颜色,返回左上角第一点颜色位置坐标
XY = Plugin.Color.FindMutiColor(0, 0, 1024, 768, "FFFFFF", "2|0|FFFFFF,-6|1|FFFFFF,-3|1|FFFFFF,-6|3|FFFFFF,-3|3|FFFFFF,0|3|FFFFFF,4|3|FFFFFF,-1|5|FFFFFF,3|5|FFFFFF,-3|6|FFFFFF,-6|7|FFFFFF,1|8|FFFFFF,4|8|FFFFFF,-5|10|FFFFFF,-3|10|FFFFFF,4|10|FFFFFF", 1)
//下面这句用于分割字符串
ZB = InStr(XY, "|")
//下面这句将字符串转换成数值
X = Clng(Left(XY, ZB - 1)): Y = Clng(Right(XY, Len(XY) - ZB))
msgbox "屏幕多点找色功能:找屏幕""我""字位置位:" & X&","&Y
FindMultiColorEx 区域多点找色(增强)
参数1 整数型,屏幕左上角X坐标
参数2 整数型,屏幕左上角Y坐标
参数3 整数型,屏幕右下角X坐标
参数4 整数型,屏幕右下角Y坐标
参数5 字符串型,第一点16进制颜色值
参数6 字符串型,符合偏移点颜色组(相对第一点位置偏移X坐标|相对第一点位置偏移Y坐标|16进制颜色)
参数7 整数型,相似度
参数8 整数型,查找方式(0:从右下往左上查找,1:从左上往右下查找)
返回值:字符串型,左上角第一点颜色位置坐标
//下面这句在屏幕区域范围内按方式0,查找多点颜色,返回左上角第一点颜色位置坐标
XY = Plugin.Color.FindMutiColorEx(0, 0, 1024, 768, "FFFFFF", "2|0|FFFFFF,-6|1|FFFFFF,-3|1|FFFFFF,-6|3|FFFFFF,-3|3|FFFFFF,0|3|FFFFFF,4|3|FFFFFF,-1|5|FFFFFF,3|5|FFFFFF,-3|6|FFFFFF,-6|7|FFFFFF,1|8|FFFFFF,4|8|FFFFFF,-5|10|FFFFFF,-3|10|FFFFFF,4|10|FFFFFF", 1, 0)
//下面这句用于分割字符串
ZB = InStr(XY, "|")
//下面这句将字符串转换成数值
X = Clng(Left(XY, ZB - 1)): Y = Clng(Right(XY, Len(XY) - ZB))
msgbox "屏幕多点找色功能:找屏幕""我""字位置位:" & X&","&Y
FindShape 区域多点找形状
参数1 整数型,屏幕左上角X坐标
参数2 整数型,屏幕左上角Y坐标
参数3 整数型,屏幕右下角X坐标
参数4 整数型,屏幕右下角Y坐标
参数5 字符串型,符合偏移形状组(相对第一点位置偏移X坐标|相对第一点位置偏移Y坐标|条件)
参数6 整数型,相似度
返回值:字符串型,左上角第一点位置坐标
//条件:0=不等,1=等于
//下面这句在屏幕区域范围内查找图形形状,返回左上角第一点坐标位置
XY = Plugin.Color.FindShape(0, 0, 1024, 768, "2|0|1,4|0|1,6|0|0,-4|1|1,-1|1|1,5|1|1,-4|3|1,-1|3|1,2|3|1,6|3|1,-4|5|0,2|5|1,5|5|1,-1|6|1,6|6|0,-4|7|1,3|8|1,6|8|1,-4|10|0,-3|10|1,-1|10|1,2|10|0,6|10|1", 1)
//下面这句用于分割字符串
ZB = InStr(XY, "|")
//下面这句将字符串转换成数值
X = Clng(Left(XY, ZB - 1)): Y = Clng(Right(XY, Len(XY) - ZB))
msgbox "屏幕找图形形状功能:找屏幕""我""字位置位:" & X&","&Y
GetPixelColor 得到指定点颜色
参数1 整数型,屏幕X坐标
参数2 整数型,屏幕Y坐标
参数3 整数型,取色模式(0标准窗口/1透明窗口)
返回值:字符串型,得到的颜色16进制值
//取色模式(0标准窗口/1透明窗口)
GetCursorPos x,y
cr1=Plugin.Color.GetPixelColor(x,y,1)
MessageBox cr1
//得到当前点的颜色,并弹出对话框显示出来
FindColor 区域找色(支持透明窗口)
参数1,整数型:区域左上角X坐标
参数2,整数型:区域左上角Y坐标
参数3,整数型:区域右下角X坐标
参数4,整数型:区域右下角Y坐标
参数5,字符串型:16进制颜色值
参数6,整数型:查找方向
参数7,整数型:相似度
返回值:字符串型:返回找到的坐标(X坐标|Y坐标)
iCoord = Plugin.Color.FindColor(0,0,1024,768, "0000FF", 0, 1.0)
XY = Split(iCoord,"|")
TracePrint XY(0)
TracePrint XY(1)
//查找方向
//0: 从左到右,从上到下
//1: 从左到右,从下到上
//2: 从右到左,从上到下
//3: 从右到左,从下到上
//失败返回:-1|-1
FindColorBlock 区域找色块
参数1,整数型:区域左上角X坐标
参数2,整数型:区域左上角Y坐标
参数3,整数型:区域右下角X坐标
参数4,整数型:区域右下角Y坐标
参数5,字符串型:16进制颜色值
参数6,整数型:颜色块宽度
参数7,整数型:颜色块高度
参数8,整数型:查找方向
参数9,整数型:颜色相似度
返回值:字符串型:返回找到的坐标(X坐标|Y坐标)
iCoord = Plugin.Color.FindColorBlock(0,0,1024,768,"0000FF",5, 5, 0, 1.0)
XY = Split(iCoord,"|")
TracePrint XY(0)
TracePrint XY(1)
//查找一种只有单纯一种颜色的矩形块。
//查找方向:
//0: 从左到右,从上到下
//1: 从左到右,从下到上
//2: 从右到左,从上到下
//3: 从右到左,从下到上
//失败返回:-1|-1
CountBlockNum 统计区域色块数量
参数1,整数型:区域左上角X坐标
参数2,整数型:区域左上角Y坐标
参数3,整数型:区域右下角X坐标
参数4,整数型:区域右下角Y坐标
参数5,字符串型:16进制颜色值
参数6,整数型:颜色相似度
返回值:整数型:颜色块数量
//色块可以是不规则的或者是连续体的颜色。
iNum = Plugin.Color.CountBlockNum(0,0,100,100,"0000FF",1.0)
//失败返回:0
GetBlockRange 获取每个色块的坐标范围
参数1,整数型:区域左上角X坐标
参数2,整数型:区域左上角Y坐标
参数3,整数型:区域右下角X坐标
参数4,整数型:区域右下角Y坐标
参数5,字符串型:16进制颜色值
参数6,整数型:颜色相似度
返回值:字符串型:每个色块坐标范围(X坐标,Y坐标,宽,高|X坐标,Y坐标,宽,高|...)
iNum = Plugin.Color.GetBlockRange(0,0,100,100,"0000FF",1.0)
iBlock = Split(iNum,"|")
For n = 0 To Ubound(iBlock)
iRange = Split(iBlock(n), ",")
For i = 0 To Ubound(iRange)
TracePrint iRange(i)
Next
Next
//色块可以是不规则的或者是连续体的颜色。
//失败返回:-1,-1,-1,-1
IsDisplayDead 检测屏幕颜色变化区域
判断指定的区域,在指定的时间内(毫秒),区域颜色是否一直不变。(卡屏)
参数1,整数型:区域左上角X坐标
参数2,整数型:区域左上角Y坐标
参数3,整数型:区域右下角X坐标
参数4,整数型:区域右下角Y坐标
参数5,整数型:需要等待的时间,单位是毫秒
返回值:布尔型:是True/否Flase
iDead = Plugin.Color.IsDisplayDead(0,0,100,100,3000)
TracePrint iDead
//1000毫秒 = 1秒