applescriptを介してサードパーティのメニューレットにアクセスすることは可能ですか?(これらのアイコンは、グローバルメニューバーの右上隅に表示されます)。
基本的に、特定のメニュー項目(アイコンをクリックすると表示される)が有効になっているか無効になっているか(グレー表示)を知りたいです。
これに関するリソースはありますか?
ありがとう
applescriptを介してサードパーティのメニューレットにアクセスすることは可能ですか?(これらのアイコンは、グローバルメニューバーの右上隅に表示されます)。
基本的に、特定のメニュー項目(アイコンをクリックすると表示される)が有効になっているか無効になっているか(グレー表示)を知りたいです。
これに関するリソースはありますか?
ありがとう
はい、メニュー項目には「有効」プロパティがあります。このプロパティは、「グレー表示された」メニュー項目ではfalseです。たとえば、メインメニューバーに時計のメニューレットを表示します。各メニュー項目の有効なプロパティを知りたい場合は、これを行うことができます...
tell application "SystemUIServer" to activate
set theProps to {}
tell application "System Events"
    tell process "SystemUIServer"
        set menulets to menu bar items of menu bar 1
        repeat with aMenu in menulets
            if (description of aMenu) is "clock" then
                click aMenu -- we have to open it to access the menu items inside it
                delay 0.2
                set clockMenuItems to menu items of menu 1 of aMenu
                repeat with aMenuItem in clockMenuItems
                    set end of theProps to {title of aMenuItem, enabled of aMenuItem}
                end repeat
            end if
        end repeat
    end tell
end tell
return theProps
これらのメニューレットの一部は通常のメニューレットではないことに注意してください。あなたが異なって扱わなければならないものですが、概念は同じです。メニューレットをクリックしてからそのメニュー項目にアクセスし、それらの有効化プロパティを確認します。