2015-04-17 188 views
1

我想創建一個AppleScript點擊菜單但我不能永遠使用我,這裏的腳本是什麼菜單我想:AppleScript的點擊菜單欄選項

ELEMENT : 
Role : menu item 
Title: "sign in As..." 
Description : 
Help: 
Application: SytemUIServer 

ELEMENT PATCH (starting at leaf element): 
menu Item "Sign in As..." (menu item 12) 
    menu (menu 1) 
    menu extra (menu bar item 2) 
    menu bar (menu bar 1) 
     application "SystemUIServer" 

所以我做了幾個腳本,上一次是

ignoring application responses 
    tell application "System Events" to tell process "SystemUIServer" 
     click menu bar item 2 of menu bar 1 
    end tell 
end ignoring 
do shell script "killall System\\ Events" 
delay 0.1 
tell application "System Events" to tell process "SystemUIServer" 
    tell menu item 12 of menu 1 of menu bar item 2 of menu bar 1 
     click 
    end tell 
end tell 

而且我剛剛認識到,位置可改變(有一段時間我想點擊的項目是菜單項12某個時候它的10等)

+0

元: 作用:菜單項 標題: 「登錄爲...」 說明: 幫助: 應用:SytemUIServer 元PATCH(開始於葉元素): 菜單項目「登錄爲。 ..「(菜單項12) 菜單(菜單1) 菜單額外(菜單欄項目2) 菜單欄(菜單欄1) 應用程序」SystemUIServer「 –

回答

4

在你的問題,你沒沒有指定菜單欄項目名稱應用程序名稱擁有菜單欄項目。那就是問題所在。

首先,SystemUIServer只能運行OS X本機的菜單欄項目/圖標。要查看它運行的圖標,請分別在Script Editor中執行以下三行。

1)

tell application "System Events" to tell process "SystemUIServer" ¬ 
to number of menu bars 

2)

tell application "System Events" to tell process "SystemUIServer" ¬ 
to value of attribute "AXDescription" of menu bar items of menu bar 1 

3)

tell application "System Events" to tell process "SystemUIServer" ¬ 
to title of menu bar items of menu bar 2 

結果應該是這樣的:

1)2

2){"Wi-Fi, four of four bars, with WiFiName.", "Battery: Charged ", "Clock"}

3){"Notification Center", missing value}

第三方應用,加上射燈,管理自己的菜單欄項目/圖標。焦點例如:

tell application "System Events" to tell process "Spotlight" ¬ 
to title of menu bar items of menu bar 1 

這給了你:{"Spotlight"}

如果你有Caffeine

tell application "System Events" to tell process "Caffeine" ¬ 
to title of menu bar items of menu bar 1 

你得到:{missing value}「,導致其程序設計師並沒有理會命名的項目。

因此,如果這是您嘗試編寫腳本的第三方菜單欄項目,它不在SystemUIServer中。如果您只是使用位置而不是名稱來引用菜單欄項目,則無法每次都可靠地單擊它。

McUsr插入此行,以保存必須是最少6個字符的編輯。

+0

嗨,謝謝你的回答,菜單欄的名稱「蘋果連接」及其集成在「SystemUIServer」 –