大漠插件循环找图总是第一个坐标的问题
;大漠方法;#AutoIt3Wrapper_UseX64=No;如果64位系统运行出错加这句
#include <ScreenCapture.au3>
RunWait(@ComSpec & " /c" & "RegSvr32 /s F:\Setups\PowerTools\AUTOIT\MyInclude\DM3.1233\dm.dll", "", @SW_HIDE)
Global $DM = ObjCreate("dm.dmsoft")
$TimeH = TimerInit()
Do
_ScreenCapture_Capture(@ScriptDir & "\SP\pttemp.bmp", 2, 545, 72, 615)
;$DM.Capture(2, 545, 72, 615, @ScriptDir & "\SP\pttemp.bmp")
$Str = $DM.FindPicE(21, 182, 322, 483, @ScriptDir & "\SP\pttemp.bmp", "000000", 0.7, 0)
;返回找到的图片序号(从0开始索引)以及X和Y坐标 形式如"index|x|y", 比如"3|100|200"(图片左上角的坐标)
$PicPos = StringSplit($Str, "|")
If Number($PicPos) > 0 Then MouseClickDrag("left", 40, 580, Number($PicPos) + 40 - 380, Number($PicPos) + 40, 0)
Until TimerDiff($TimeH) > 20000
2, 545, 72, 615区域的图片经过MouseClickDrag拖动过一次就会自动改变。
所以要循环找图。但不知道为什么。只能第一次循环能找到图,后面的图不能找到,总是返回第一个已经找过的坐标或者就是找不到。
请问为什么,怎么解决?第一次用大漠 FindPicE的返回值中,找到的图片的序号从0开始索引.如果没找到返回-1。你现在每次是寻找一个图片,所以找到的话,就是0|xx|xx,找不到就是-1|-1|-1。且,每次找到的图片 其位置是固定的,故返回值 是一样的.所以后面的循环只要返回的是0|xx|xx,就表明找到了.
页:
[1]