2017-03-15 39 views
0

我有一個automator腳本,它應該使瀏覽器全屏顯示,並使用命令+ 0將其縮回到默認大小。全屏工作,但忽略帶有0的按鍵。Automator keystroke不能用於零數字

tell application "System Events" 
    keystroke "f" using {command down, control down}   
    keystroke "0" using {command down} 
end tell 

我想:

keystroke "0" using {command down} 
keystroke 0 using {command down} 
keystroke {29} using {command down} 

所有被忽略。

+0

在告訴系統事件和按鍵之前,您必須告訴您的瀏覽器並將其激活。然後擊鍵將按預期發送到您的瀏覽器。 – pbell

+0

你的意思是返回輸入。是的,我有。這只是告訴腳本的一部分。命令+ F執行,但不執行命令+ 0 – Omar

+0

什麼是瀏覽器和命令+ 0應該執行什麼操作? (我試過Safari,但是命令+ 0什麼都不做) – pbell

回答

0

我會重申pbell說,提供的用於取景的工作代碼,因爲我不知道您的特定的應用程序是如何工作的:

tell application "System Events" 
    tell application "Finder" to activate 
    keystroke "f" using {command down, control down} 
    delay 1 
    keystroke "f" using {command down, control down} 
end tell 

的重要組成部分,有我們激活搜索第一,所以鍵擊正在發送到正確的應用程序。

同樣重要的,這取決於使用情況下,能夠爲您的應用可訪問特權「系統偏好設置」 - >「安全&隱私」 - >「隱私」 - >「輔助功能」

0

聽起來像一個時間問題。 (埃裏克發佈同樣的想法,因爲我在寫這個!):)

您可以添加延遲:

tell application "Safari" to activate 
tell application "System Events" 
    tell process "Safari" 
     keystroke "f" using {command down, control down} 
     delay 1 
     keystroke "0" using {command down} 
    end tell 
end tell 

但在我的測試中,你也可以反向操作的順序。它會工作,不會要求延遲。

tell application "Safari" to activate 
tell application "System Events" 
    tell process "Safari" 
     keystroke "0" using {command down} 
     keystroke "f" using {command down, control down} 
    end tell 
end tell