我正在尝试使用AppleScript单击Logic Pro中的上下文菜单项,最好只提供菜单项的名称。看起来这应该是可能的,因为我能够使用系统首选项设置这些上下文菜单项的键盘快捷键并提供命令的名称。
例如,如果右键单击Logic中的主编辑窗口,会弹出一个菜单,其中包含一个名为“添加音频文件...”的选项。如果我为Logic创建系统首选项键盘快捷键并为其指定此菜单项名字,它能够执行得很好。我想用脚本重新创建它。我熟悉使用层次结构访问普通菜单项:
tell process "Logic Pro"
tell menu bar 1
tell menu bar item "File"
tell menu "File"
click menu item "Save"
但据我所知,没有办法访问我想要的上下文菜单(右键菜单)。似乎应该有一种方法可以简单地按名称访问非菜单栏菜单项,因为系统首选项显然能够这样做。
答案 0 :(得分:0)
Logic Pro不能编写脚本,所以我的建议是在系统首选项中设置键盘快捷键,然后使用系统事件来使用所述快捷键。
例如进入查找模式(假设有一个查找模式,因为我不拥有Logic Pro)
tell application "Logic Pro" to activate
tell application "System Events"
tell application process "Logic Pro"
keystroke "f" using command down
end tell
end tell
答案 1 :(得分:0)
我认为你不需要使用上下文菜单。 Logic Pro X用户界面的其他部分提供了“添加音频文件...”。如果打开“项目音频”窗口,则会出现“音频文件”菜单按钮,其中包含“添加音频文件...”按钮。因此,AppleScript将激活“添加音频文件...”命令:
tell application "System Events"
tell application "Logic Pro X" to activate
tell process "Logic Pro X"
tell menu bar 1
click menu item "Open Project Audio" of menu "Window"
end tell
delay 1
tell window 1
click menu button "Audio File" of group 1 of group 1
click menu item "Add Audio File..." of menu 1 of menu button "Audio File" of group 1 of group 1
end tell
end tell
end tell
如果分发GUI脚本,请注意以下脚本仅适用于在Mac上运行的Logic Pro X(设置为美国英语(可能还有其他类型的英语)),因为菜单的名称会发生变化系统设置为另一种语言。你可以做的是用数字替换上面脚本中的名字,据我所知,这是一个完全实验性的过程。你必须尝试不同的数字,看看哪些继续有用。
所以你可以替换:
menu button "Audio File" of group 1 of group 1
...在上面的脚本中:
menu button 1 of group 1 of group 1
...并获得相同的功能,该脚本适用于任何Mac。或者您可能需要使用“菜单按钮2”。上述脚本中的其他命名项也是如此。
另请注意,您分发此脚本的用户必须授予系统事件权限才能在“系统偏好设置”的“安全”面板中控制其Mac,否则此脚本将无效。这可能是分发GUI脚本的巨大障碍。如果您将脚本保存为应用程序,则必须对其进行数字签名,否则它将无法在其他人的计算机上运行,这可能很复杂。