2012-03-07 75 views
5

我在通过java使用sikuli时遇到了一个问题,如果有2个相同类型的元素(或类似图像),它不能点击正确的元素。所以我想知道是否有可能让sikuli在一个特定区域内工作,并且有人可以解释怎么做?区域内的Sikuli动作

回答

4

是sikuli可以在特定区域内工作。挑战在于定义一个只包含您的两个元素之一的区域。你用x,y坐标定义一个区域。您还可以根据显示器上独特图案(图片)的位置增加区域的大小。

while exists("foo.png"): 
    hover("bar.png") 
    ClickMeRegion = find("bar.png").nearby(5).right() 
    ClickMeRegion.click("baz.png") 

因此,在上面我寻找正在显示的图像foo.png/bar.png/baz.png图像对。首先,我将鼠标悬停在bar.png上,以便从视觉上看到脚本正在看哪对。然后我创建一个围绕bar.png中心延伸5个像素的区域,并将其延伸到显示器的右侧。这突出显示了单个baz.png图像。然后我可以点击我感兴趣的一个baz.png。

有关更多有关区域的信息,请参阅:http://doc.sikuli.org/region.html