簡體   English   中英

Sikuli可以觀察鼠標指針的變化嗎? (響應式鼠標與非響應式鼠標)

[英]Can Sikuli observe changes in mouse pointer? (responsive vs non-responsive mouse)

我正在使用Sikuli(Sikuli 1.1.0和Windows 7)控制Windows GUI。 令人討厭的是,向導有時需要使用年齡才能加載向導的下一階段,在這些情況下,我的Sikuli腳本由於不等待而崩潰。 在這些滯后時間內,我會像鼠標一樣旋轉窗口。 更糟糕的是,有時還會出現“下一步”按鈕(我正在與Sikuli等待的那個按鈕),但是鼠標尚未准備好單擊它,並且仍處於旋轉循環模式達20-30s。 我不想在向導的每個階段都指定30秒的等待時間,因為那樣會不必要地大量降低腳本的執行速度。 特別是因為大多數時候我都不需要它。

此處報告了類似的問題: 如何讓sikuli等待鼠標指針從“忙”變為“不忙”?

我想知道這個問題是否有更新? Sikuli是否可以識別鼠標是否仍處於旋轉圓圈無響應模式,並會等到鼠標恢復正常?

我不相信Sikuli支持此功能,但是您可以通過某種方式解決此問題。

使用exact匹配,然后您將不得不循環直到您嘗試鍵入的字段從空白字段更改為帶有文本的內容(或您要更改的任何元素)為止。 一旦檢測到更改,就知道事情不再被鎖定。

但基本上,您將陷入循環並在循環中執行操作,直到您可以檢測到要執行的操作被卡住為止。

這是您可以用來處理此問題的基本類。

class Element:
    def __init__(self, element, region):
        self.element = element
        self.region = region

    def stateChanged(self):
        if self.region.exists(Pattern(self.element).exact()):
            return False
        return True

gmailEmailField = Element("1458930208197.png", Region(438,239,388,342))

while not gmailEmailField.stateChanged():
    wait(.5)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM