是否可以创建打开菜单栏应用程序的热键(或其他触发器)?我的意思不是发射。我的意思是,使菜单栏应用程序显示其内容。
举例来说,我想创建一个热键来打开菜单栏天气应用程序。能做到吗?
我尝试打开的应用程序是Github上的开源程序,因此我愿意在需要时将触发器编码到应用程序中,但是我不知道如何执行此操作,这意味着我希望使用更简单的解决方案。
我正在使用美洲狮。
是否可以创建打开菜单栏应用程序的热键(或其他触发器)?我的意思不是发射。我的意思是,使菜单栏应用程序显示其内容。
举例来说,我想创建一个热键来打开菜单栏天气应用程序。能做到吗?
我尝试打开的应用程序是Github上的开源程序,因此我愿意在需要时将触发器编码到应用程序中,但是我不知道如何执行此操作,这意味着我希望使用更简单的解决方案。
我正在使用美洲狮。
Answers:
您可以为脚本分配快捷方式,如下所示:
ignoring application responses
tell application "System Events" to tell process "QuickHue"
click menu bar item 1 of menu bar 1
end tell
end ignoring
有一个错误,单击某些状态菜单项会导致脚本被阻止大约5秒钟。一种解决方法是在单击命令后终止系统事件:
launch application "System Events"
delay 0.2
ignoring application responses
tell application "System Events" to tell process "Time Tracker"
click menu bar item 1 of menu bar 2
end tell
end ignoring
do shell script "killall System\\ Events"
delay 0.1
tell application "System Events" to tell process "Time Tracker"
tell menu bar item 1 of menu bar 2
click menu item 2 of menu 1
end tell
end tell
当系统事件尚未运行时,需要前两行。系统事件支持突然终止,因此即使发送KILL信号也应该是安全的。