所以我想要捕获一个图像,即图像s,它始终位于同一区域。它然后消失,可能会或可能不会重新出现在不同的区域。
我希望程序在第一次出现时捕获,如果它重新出现在其他区域,则单击一组按钮,否则转到另一个功能。
另一件事是每次调用函数时图像都会发生变化,但它仍保留在同一位置。
以下是我的代码:
def playLoop():
s = capture(firstRegion)
warnBox = exists("1443867801301.png")
if not warnBox:
if exists("1443867813008.png"):
click(x)
playLoop()
else:
if secondRegion.exists(Pattern(s).similar(0.8)):
wait(3)
click(x)
playLoop()
else:
loopLoop()
else:
doubleClick(y)
if secondRegion.exists(Pattern(s).similar(0.8)):
wait(3)
click(x)
playLoop()
else:
loopLoop()
我没有错误,但它似乎不起作用。有什么想法吗?
答案 0 :(得分:1)
最后,如果你想获得数次,你可以将一个变量传递给函数:
def playLoop(times,x,y):
s = capture(firstRegion)
t = find(s)
if times==0:
warnBox = exists("1443867801301.png")
if not warnBox:
if exists("1443867813008.png"):
click(x)
times+=1
playLoop(times,t.getX(),t.getY())
if times != 0:
warnBox = exists("1443867801301.png")
if not warnBox:
if t.getX() != x or t.getY() != y: #different location
doSomething()
else:
otherFunction() #same location
times+=1
PD:如果我的英语不好,请嘲笑:) 答案 1 :(得分:0)
To see if region1 exists in region2 you could use if region2.exists(region1) then
.