运行检测显示器的 Applescript [英] Applescript to run Detect Displays
问题描述
当我将外接显示器插入我的 Macbook 并唤醒它时,显示器的分辨率通常是错误的.在 Mountain Lion 之前,我能够运行以下 AppleScript 来检测显示:
When I plug an external monitor into my Macbook and wake it, the display is often the wrong resolution. Prior to Mountain Lion, I was able to run the following applescript to detect displays:
tell application "System Preferences" to activate
tell application "System Events"
tell process "System Preferences"
click menu item "Displays" of menu "View" of menu bar 1
tell button "Detect Displays" of window 1 to click
end tell
end tell
tell application "System Preferences" to quit
但是,在 10.8 中,检测显示"按钮需要您按 Option 键才能显示它,因此脚本会出现以下错误:
But, with 10.8, the "Detect Displays" button requires that you press the Option key to display it, and so the script gives the following error:
错误系统事件出错:无法获取按钮\"检测显示进程的窗口 1 的系统偏好设置".数字-1728 来自进程系统偏好设置"的窗口 1 的检测显示"按钮
error "System Events got an error: Can’t get button \"Detect Displays\" of window 1 of process \"System Preferences\"." number -1728 from button "Detect Displays" of window 1 of process "System Preferences"
我的 Applescript 技能还不够初级,我的 google-fu 还没有让我偶然发现答案.
My applescript skills are less than rudimentary and my google-fu has not enabled me to stumble across an answer.
如何修改脚本以单击现在隐藏的检测显示按钮?
推荐答案
试试这个...
tell application "System Preferences"
activate
reveal pane "com.apple.preference.displays"
end tell
delay 0.5
tell application "System Events"
tell process "System Preferences"
try --don't even consider not using a try block!
key down option
delay 0.2
click button "Detect Displays" of window 1
delay 0.2
key up option
on error --logging out is the only other way to clear these
key up option
end try
end tell
end tell
这篇关于运行检测显示器的 Applescript的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!