• 新浪微博:
  • 微信 :
按键精灵电脑版
立即下载

软件版本:2014.05
软件大小:21.6M
更新时间:07-04

按键精灵安卓版
立即下载

软件版本:3.3.0
软件大小:62.5M
更新时间:5-24

按键精灵iOS版
立即下载

软件版本:1.3.3
软件大小:29.2M
更新时间:06-14

按键精灵Mac版
立即下载

软件版本:1.1.0
软件大小:12.3M
更新时间:12-29

快捷导航

登录 后使用快捷导航
没有帐号? 注册

登录 注册
发新话题 回复该主题

[已解决] 找色多次,只要有一次成立,就执行如下代码 [复制链接]

1#
Do
//下面这句在屏幕区域范围内查找多点颜色,返回左上角第一点颜色位置坐标
XY = Plugin.Color.FindMutiColor(27,91,48,98, "0054DD-1e1e1e", "0|0|0054DD-1e1e1e", 1)
//下面这句用于分割字符串
ZB = InStr(XY, "|")
//下面这句将字符串转换成数值
X = Clng(Left(XY, ZB - 1)): Y = Clng(Right(XY, Len(XY) - ZB))
TracePrint "屏幕多点找色功能:找屏幕""我""字位置位于:" & X&","&Y
Delay 1000
Loop
If x>0 and y>0 then
MessageBox "000"
End if
昨天问的太模糊,今天整理了一下,不用0.5到1的相似度来找图,而是用偏色来找,居然还真行,也不知道是不是偏色设置的不够大,如果是每秒找一次,在个别情况下会出现偶尔找不到,能不能找十次,每秒一次,只要十次中,有一次找到条件就成立,应该怎样写,向您请教

本主题由 版主 gljxsd 于 2018/9/14 15:30:41 执行 主题分类 操作
2#

您好, 需要10次的话, 建议 使用 For 循环, 可以定义 循环 次数
  1. For 10
  2. //下面这句在屏幕区域范围内查找多点颜色,返回左上角第一点颜色位置坐标
  3. XY = Plugin.Color.FindMutiColor(27,91,48,98, "0054DD-1e1e1e", "0|0|0054DD-1e1e1e", 1)
  4. //下面这句用于分割字符串
  5. ZB = InStr(XY, "|")
  6. //下面这句将字符串转换成数值
  7. X = Clng(Left(XY, ZB - 1)): Y = Clng(Right(XY, Len(XY) - ZB))
  8. TracePrint "屏幕多点找色功能:找屏幕""我""字位置位于:" & X & "," & Y
  9. If x>0 and y>0 then
  10.     MessageBox "000"'只要有一次找到, 就会来到这里
  11.     End if
  12. Delay 1000
  13. Next
  14. '10次都没有找到 就会来到这里.
复制代码
如果 在找到后 还需要 跳出循环的话 , 那 就在 循环外面 再加个 If x > 0 的判断, 来区分 是找到跳出来的 还是 没找到 自动出来的

发新话题 回复该主题