苹果脚本旋转显示

apple script to rotate display

你好,我正在尝试编写一个苹果脚本来在 macOS 12.3 中旋转显示

我已查看以下内容,但 apple 更改了显示菜单

https://apple.stackexchange.com/questions/319938/keyboard-shortcut-flip-screen

我在为外部显示器选择单元格菜单项时遇到问题

我尝试过使用 Accessibility Inspector,但我对它的了解还不够

display menu

Accessibility Inspector

    if running of application "System Preferences" then
    quit application "System Preferences"
    delay 1
end if

tell application "System Preferences"
    reveal anchor "displaysDisplayTab" of pane id "com.apple.preference.displays"
    delay 1
    tell application "System Events"
        tell process "System Preferences"
            tell window 1
                click button "Display Settings…"
                tell cell of outline row of outline 1 of scroll area 1 of sheet 1 of window 1
                     set selected to false
                end tell
                
                
                
                --tell pop up button "Rotation:" of tab group 1 of (first window whose name is "LG HDR 4K") of application process "System Preferences"
                --  if (value) contains "Standard" then
                --          click
                --          click menu item "90°" of menu 1
                --          my clickConfirmButton()
                --      else
                --          click
                --          click menu item "Standard" of menu 1
                --      end if
                --  end tell
            end tell
        end tell
    end tell
end tell

感谢 oluckyman 对 this gist

的评论
            tell sheet 1
                select row 2 of outline 1 of scroll area 1 -- the row with external monitor
                tell pop up button "Rotation:"
                    set theRotation to value of it
                    click
                    tell menu "Rotation:"
                        if theRotation = "Standard" then
                            click menu item "90°" -- your preferred rotation 
                        else
                            click menu item "Standard"
                        end if
                    end tell
                end tell
                delay 1
                if exists of button "Confirm" of sheet 1 then
                    click button "Confirm" of sheet 1
                end if
                click button "Done"
            end tell

https://gist.github.com/v1c77/96affa87de94045d29cdc5f9cb8c1847