Sikuli while循环语法在java中

时间:2013-04-08 18:43:22

标签: sikuli

这是Sikuli脚本的一个例子

while (exists("OK.png"),10):
    click("OK.png")

我怎样才能在Java中做同样的事情?

以下是我的尝试:

Screen screen = new Screen();
Pattern image = new Pattern("OK.png");

while (screen.exists(image))
{
    screen.click(image);
}

但它无法使用此异常进行编译:

java: SikuliTest.java:29: incompatible types
found   : org.sikuli.script.Match
required: boolean

任何人都可以提供正确的语法吗?

2 个答案:

答案 0 :(得分:2)

根据the documentation,如果图片匹配,则exists()会返回Match个对象,否则会返回null。试试这个:

while (screen.exists(image) != null)

答案 1 :(得分:1)

import org.sikuli.script.FindFailed;
Screen screen = new Screen();

try{
    while(screen.exists("OK.png") != null){
    screen.click("OK.png");
    }
}
    catch(FindFailed e){
        e.getStackTrace();
    }