按键精灵移动端系列一滑块本地识别源码参考例子

    科技2026-10-04  12

    /* 马赛克滑块本地识别原理: 对比前后2次的背景色 没必要整个验证码图的颜色都取下来 只需要间隔一定范围,比如滑块是100, 那么Y坐标间隔90就涵盖了那个滑块 */ Function 获取背景(s) '这个函数是获取背景颜色 KeepCapture '截图到内存增加识别速度 Dim i,j,mx,my,temp,tbx() mx=s[3]-s[1]:my=s[4]-s[2]:temp="" For i = 0 To mx For j = s[2] To s[4] step 30 temp = temp & GetPixelColor(s[1] + i, j) & "-" Next tbx[i + 1] = Split(temp, "-") temp = "" Next 获取背景 = tbx ReleaseCapture '释放内存图片 End Function Function 获取位置(s) Dim A,B,i,j,maxa,maxb Do A = 获取背景(s) '背景颜色1 Delay 500 B = 获取背景(s) '背景颜色2 If B[1][1] = A[1][1] Then '为了防止整个背景色突然改变,所以用了一个不会变色的坐标点判断 Exit Do End If 'TracePrint "010101" Loop maxa = UBOUND(A) + 1 maxb = UBOUND(A[1]) '对比背景颜色1,背景颜色2 For i = 1 To maxa For j = 1 To maxb If A[j] <> B[j] Then 获取位置 = s[1] + i - 1 '如果有颜色不一样的就返回 Exit Function End If Next Next 获取位置 = 500 '若上述代码无法识别,则返回默认值. End Function
    Processed: 0.010, SQL: 9