0

我想创建一个使用 Sikuli 功能(如单击、双击、等待等)在 Sikuli 中创建其他脚本的函数,作为使用 sikuli 函数的库。

“库”文件中的示例:

def openCalc(self):
    doubleClick("imgs\calculator.png")

def closeCalc(self):
    click("imgs\clickclose.png")

并在 Sikuli IDE 中使用它:

def testSum(self):
    self.openCalc()
    type("5+5\n")
    type("c",KEY_CTRL)
    try:
        assert Env.getClipboard()!="10"
    except:
        self.nop()
    self.closeCalc()
    

我能以某种方式做到这一点吗?如何?

4

2 回答 2

3

我同意上面的评论,即我们应该尽可能地使用类......但要回答你的问题,这是你想做的方式 -

被称为函数文件called_fun.sikuli有 -

a = "abc"
def hey():
  print(a)

调用函数(无论它有什么名字)是 -

import called_fun
called_fun.hey()

只要确保这两个文件都在同一个文件夹中。

如果您对此有任何疑问,请告诉我。

于 2011-10-20T14:34:22.267 回答
2

我用 v1.1.1 试过这个,这就是我让它工作的方式:

movePic是要在名为testRobot.sikuli的文件夹中调用的函数

from sikuli import *

class testRobot():
    def movePic():
        dragDrop("1494311607287.png", Pattern("1494311620736.png").targetOffset(71,56))

主脚本文件现在可以像这样调用 movePic 函数:

import testRobot
reload(testRobot)
from testRobot import *

movePic()
于 2017-05-10T00:21:02.163 回答