我正在尝试为名为F.lux的应用程序制作一个应用程序,点击菜单项"禁用一小时",如下面的屏幕截图所示:

元素路径如下面的屏幕截图所示:

这是我到目前为止的代码:
tell application "System Events"
tell process "Flux"
click (menu bar item 1 of menu bar 2)
click menu item "Disable for an hour" of menu 1 of menu bar item 1 of
menu bar 2
end tell
end tell
Run Code Online (Sandbox Code Playgroud)
一切都编译好,但是当我尝试运行脚本时,我不断收到以下错误消息:
错误"系统事件出错:无法获取进程\"Flux \"菜单栏2的菜单栏项目1的菜单1.索引无效." 从流程"Flux"的菜单栏2的菜单栏项目1的菜单1开始编号-1719
有人可以确定我在哪里出错吗?
我是 AppleScript 的新手,我只是在深入研究 UI 脚本。我正在尝试为程序 TypeIt4Me 创建一个脚本,这是一个不支持 AppleScript 的菜单栏实用程序(文本扩展)。
我提议的脚本将利用系统事件单击其菜单栏图标,键入五次,一次,然后返回。但是,AppleScript 在单击图标和执行第一次击键之间会暂停很长时间,以至于这作为脚本是不切实际的。下面是第一次点击和一次按下的版本。
tell application "System Events"
click menu bar item 1 of menu bar 2 of application process "TypeIt4Me"
key code 125 -- ie "down"
end tell
Run Code Online (Sandbox Code Playgroud)
这可能是我的代码的问题吗?某个地方的设置?AppleScript 一般?谢谢。
我想创建一个 AppleScript 来单击菜单,但我无法使用我使用的脚本,这是我想要的菜单:
ELEMENT :
Role : menu item
Title: "sign in As..."
Description :
Help:
Application: SytemUIServer
ELEMENT PATCH (starting at leaf element):
menu Item "Sign in As..." (menu item 12)
menu (menu 1)
menu extra (menu bar item 2)
menu bar (menu bar 1)
application "SystemUIServer"
Run Code Online (Sandbox Code Playgroud)
所以我做了几个脚本,最后一个是
ignoring application responses
tell application "System Events" to tell process "SystemUIServer"
click menu bar item 2 of menu bar 1
end tell
end ignoring
do shell script "killall System\\ Events"
delay …Run Code Online (Sandbox Code Playgroud)