我正在尝试使用AppleScript在Logic Pro中点击上下文菜单项,最好是简单地提供菜单项的名称。这看起来应该是可能的,因为我能够使用系统首选项并提供命令的名称来为这些上下文菜单项设置键盘快捷键。
例如,如果您右击Logic中的主编辑窗口,将弹出一个菜单,其中包含一个名为"Add Audio File...“的选项。如果我为Logic创建了一个系统首选项键盘快捷键,并赋予它这个菜单项名称,它就能够正常执行。我想用一个脚本重新创建它。我熟悉使用层次结构访问普通菜单项,如下所示:
tell process "Logic Pro"
tell menu bar 1
tell menu bar item "File"
tell menu "File"
click menu item "Save"但据我所知,没有办法像这样访问我想要的上下文菜单(右键菜单)。似乎应该有一种方法可以简单地通过名称访问非菜单栏菜单项,因为系统首选项显然能够做到这一点。
发布于 2014-07-25 14:45:02
Logic pro不是脚本化的,所以我的建议是你在系统偏好设置中设置键盘快捷键,然后使用系统事件来使用这些快捷键。
例如,进入find模式(假设有find模式,因为我没有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发布于 2014-08-02 19:47:01
我不认为你需要使用上下文菜单。“添加音频文件…”在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脚本的一个巨大障碍。如果你将你的脚本保存为应用程序,你必须对它进行数字签名,否则它将无法在其他人的计算机上运行,这可能会很复杂。
https://stackoverflow.com/questions/24949335
复制相似问题