0

这是我需要做的。请让我知道我应该添加或更改什么。

问题:在我的任务中,有时会有一个带有滑块的随机弹出窗口。当这个弹出时,Sikuli 会抛出FindFailed异常。相反,我希望此脚本扫描图像并执行滑动操作,然后重试查找之前要查找的内容。我很确定这只是我需要在代码顶部添加的几行代码。

示例:假设它找不到5.png,它会提示要求用户输入。相反,我希望它搜索图像然后执行滑动操作,然后再次开始寻找图像5.png并继续。

下面的代码:

Region(example Region)
setFindFailedResponse(PROMPT)
Settings.MoveMouseDelay=0
click("1.png")
click("2.png")
click("3.png")
click("4.png")
click("5.png")
click("6.png")
click("7.png")
4

1 回答 1

0

也许您可以创建一个循环来检测是否出现了某个弹出窗口。
例如,您可以让它看起来是否存在弹出标题。
True你可以使用PopUp = App.focusedWindow().
然后PopUp是定义的区域,仅弹出窗口。

然后制作滑动条的图片,如果该滑动条在其中可见,PopUp您可以使用“mouseDown()”和mouseUp().
然后再查看该图像是否存在。

要查看图像是否存在,您可以使用:

if exists(image5): 
    # Do something
else:
    # Do something else 

要在弹出窗口中查找图像,您可以使用:

if PopUp.exists(imageScrollbar): 
    # Do something 

当我让 Sikuli 使用滚动条时,我通常会在滚动条上制作 3 条条纹的图片。

于 2015-10-22T08:14:19.760 回答