按键精灵多点找色偏移值用变量失败
某点数组在前面赋过值了dianx0=某点x(0)dianx1=某点x(1)dianx2=某点x(2)dian3x=某点x(3):dianx4=某点x(4)diany0=某...
某点数组在前面赋过值了
dianx0 = 某点x(0)
dianx1 = 某点x(1)
dianx2 = 某点x(2)
dian3x=某点x(3):dianx4=某点x(4)
diany0=某点y(0):diany1=某点y(1):diany2=某点y(2):diany3=某点y(3):diany4=某点y(4)
strHao1= "ffffff"
strHao =dianx0&"|"&diany0&"|363a3a,"&dianx1&"|"&diany1&"|363a3a,"&dianx2&"|"&diany2&"|363a3a,"&dianx3&"|"&diany3&"|363a3a,"&dianx4&"|"&diany4&"|363a3a"
XY = Plugin.GuaGame.FindMutiColor(hWnd,0, 0,1366,768, strHao1,strHao, 0.8)
MessageBox strHao
MyArray = Split(XY, "|")
X = MyArray(0) : Y = MyArray(1)
MessageBox x&" "&y
弹出-1 -1
某点x=array(5,-4, 6 , 6, -2)//这里,关键看这里
某点y=array(1, 4, 4, 9, 11)
//
//
// hWnd=Plugin.GuaGame.FindWindow(0,"未命名.bmp - 画图")
// //获得窗口大小
//nWidth=Plugin.GuaGame.GetWindowX(hWnd)
//nHight=Plugin.GuaGame.GetWindowY(hWnd)
// //下面这句在屏幕区域范围内查找多点颜色,返回左上角第一点颜色位置坐标
//strHao1= "FF0000"
//strHao =某点x(0)&"|"&某点y(0)&"|ff0000,"&某点x(1)&"|"&某点y(1)&"|ff0000,"&某点x(2)&"|"&某点y(2)&"|ff0000,"&某点x(3)&"|"&某点y(3)&"|ff0000,"&某点x(4)&"|"&某点y(4)&"|ff0000"
//
//XY = Plugin.GuaGame.FindMutiColor(hWnd, 0, 0, nWidth-1, nHight-1, strHao1,strHao, 0.85)
//MyArray = Split(XY, "|")
//
//X = MyArray(0) : Y = MyArray(1)
则成功。求解释。 展开
dianx0 = 某点x(0)
dianx1 = 某点x(1)
dianx2 = 某点x(2)
dian3x=某点x(3):dianx4=某点x(4)
diany0=某点y(0):diany1=某点y(1):diany2=某点y(2):diany3=某点y(3):diany4=某点y(4)
strHao1= "ffffff"
strHao =dianx0&"|"&diany0&"|363a3a,"&dianx1&"|"&diany1&"|363a3a,"&dianx2&"|"&diany2&"|363a3a,"&dianx3&"|"&diany3&"|363a3a,"&dianx4&"|"&diany4&"|363a3a"
XY = Plugin.GuaGame.FindMutiColor(hWnd,0, 0,1366,768, strHao1,strHao, 0.8)
MessageBox strHao
MyArray = Split(XY, "|")
X = MyArray(0) : Y = MyArray(1)
MessageBox x&" "&y
弹出-1 -1
某点x=array(5,-4, 6 , 6, -2)//这里,关键看这里
某点y=array(1, 4, 4, 9, 11)
//
//
// hWnd=Plugin.GuaGame.FindWindow(0,"未命名.bmp - 画图")
// //获得窗口大小
//nWidth=Plugin.GuaGame.GetWindowX(hWnd)
//nHight=Plugin.GuaGame.GetWindowY(hWnd)
// //下面这句在屏幕区域范围内查找多点颜色,返回左上角第一点颜色位置坐标
//strHao1= "FF0000"
//strHao =某点x(0)&"|"&某点y(0)&"|ff0000,"&某点x(1)&"|"&某点y(1)&"|ff0000,"&某点x(2)&"|"&某点y(2)&"|ff0000,"&某点x(3)&"|"&某点y(3)&"|ff0000,"&某点x(4)&"|"&某点y(4)&"|ff0000"
//
//XY = Plugin.GuaGame.FindMutiColor(hWnd, 0, 0, nWidth-1, nHight-1, strHao1,strHao, 0.85)
//MyArray = Split(XY, "|")
//
//X = MyArray(0) : Y = MyArray(1)
则成功。求解释。 展开
2个回答
展开全部
这是数据类型问题,为了避免这种错误,不要把不同类型的数据用连接符随便连起来,通常,纯数字数据和字面数据连接,变量就会默认变为字符串,例如a=1&"a",那么a="1a",此时a是字符串,
如果又有字符串,又含有运算,那就不能连接,因为变量数据类型不确定,例如a=1+2&“a”,这样就会有错,多点找色那个偏移量参数数据类型是字符串,所以,你第一种情况很可能是数据类型不正确(这是我猜测,我没调试你代码所以不确定),因此不建议这样做,你最好用数组把偏移量所有字符串存在一起,这样肯定不会出错。
如果又有字符串,又含有运算,那就不能连接,因为变量数据类型不确定,例如a=1+2&“a”,这样就会有错,多点找色那个偏移量参数数据类型是字符串,所以,你第一种情况很可能是数据类型不正确(这是我猜测,我没调试你代码所以不确定),因此不建议这样做,你最好用数组把偏移量所有字符串存在一起,这样肯定不会出错。
更多追问追答
追问
问题是,我想要的那个某点是变动的啊
追答
那也很容易,你理解我下面的代码就行了。
Dim offset_color(4)
x = array(5, - 4 , 6, 6, - 2 )
y = array(1, 4, 4, 9, 11)
For i = 0 To 4
offset_color(i) = x(i) & "|" & y(i) & "|ff0000"
Next
//后面找色就用offset_color(i),i的值自己确定
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询