0

Sikuliの関数を使用するライブラリとして、Sikuliの機能(クリック、ダブルクリック、待機など)を使用してSikuliで他のスクリプトを作成する関数を作成したいと思います。

「libary」ファイルの例:

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

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

そしてそれをSikuliIDEで使用する:

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で試しましたが、これが私がそれを機能させる方法です:

movePictestRobot.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 に答える