我是Applescript新手。我想知道Applescript显示来自任意应用程序的Apple菜单栏项目(但是原始应用程序应保留许多栏)。
我尝试使用以下脚本,使用Finder作为一种虚拟应用程序,但它不起作用。
tell application "System Events"
tell process "Finder"
tell menu bar 1
click menu bar item "Apple"
end tell
end tell
end tell
有人可以帮忙吗?
PS-1:我想知道这一点,因为将焦点移动到菜单栏的Control-F2通常不起作用,如以下链接所示: https://apple.stackexchange.com/questions/12723/control-f2-move-focus-to-menu-bar-only-works-occasionally
PS-2:我试图张贴图片,但不允许。
答案 0 :(得分:2)
process 1 where frontmost is true
获得最重要的流程:
tell application "System Events" to tell (process 1 where frontmost is true)
click menu bar item 1 of menu bar 1
end tell
单击菜单栏项目在全屏窗口中不起作用。如果系统事件几分钟没有使用,它会自动关闭,再次打开时会有短暂的延迟。
答案 1 :(得分:1)
您是否想要实际显示菜单项,即在打开菜单或对话框窗口中,或者您只想从菜单中选择菜单项?
如果您运行以下脚本,Apple菜单将会打开。使用ASCII字符28-31导航菜单。
tell application "System Events"
-- focus
key code 120 using control down
-- navigate
keystroke (ASCII character 31)
end tell
必须打开通用访问,并且菜单导航也必须打开。如果菜单导航关闭,则需要键入Control-F1才能将其打开。您可以通过脚本执行此操作,但我不知道如何使用AppleScript检查其状态。 F1的关键代码是122。
答案 2 :(得分:-1)
这对我来说可以单击在菜单栏中运行的VPN应用程序:
tell application "System Events" to tell process "GlobalProtect"
click menu bar item 1 of menu bar 2
end tell
因此在OP情况下,将"GlobalProtect"
替换为"Finder"
,将menu bar 2
替换为menu bar 1
可能会使它工作起来……看起来似乎没有任何作用当我对其进行测试时,但是它可能在后台执行操作……也许进一步的按键操作或某些功能可以满足您的需求?
答案 3 :(得分:-2)
试一试。它使用函数而不是您当前使用的复杂tell结构。
tell application "Finder" to activate
menu_click({"Finder", "View", "Arrange By", "Size"})