【发布时间】:2023-03-23 20:48:01
【问题描述】:
我到处寻找答案,但找不到任何答案。当我运行此代码时,动作 AXShowMenu 正确执行。但是脚本继续运行几秒钟并抛出错误:
“进程“消息”的“消息”窗口“消息”的滚动区域3的文本字段的菜单按钮的操作“AXShowMenu”不理解“执行”消息。”
我在这里遗漏了一些非常明显的东西吗?如何让 Applescript 在执行 AXShowMenu 操作后继续前进?
tell application "System Events"
tell process "Messages"
perform action "AXShowMenu" of menu button of text field of scroll area 3 of splitter group 1 of window "Messages"
end tell
end tell
这是我要访问的菜单的链接。如果您创建一条新消息并在文本字段中输入一些文本,则可以创建该元素。
【问题讨论】:
-
我继续在描述中添加了它。我实际上解决了这个问题:“告诉窗口“消息”的拆分器组 1 的滚动区域 3 的文本字段 1 的菜单按钮 1 执行操作 1”,但由于某种原因,这需要 5 秒以上的时间才能执行。
-
您是否要访问显示在该弹出菜单中的菜单项以创建新联系人...?如果是这样的话,如果您从主菜单栏访问菜单项会更容易吗,这样就不需要通过弹出菜单了?
-
我实际上是在尝试通过引用第一个菜单项的值来确定数字是消息还是文本消息,在这种情况下恰好是“文本消息”。不幸的是,由于某种原因,我得到的长时间延迟大大减慢了脚本的速度。
-
从表面上看,您是否尝试将索引添加到链的最后两个元素:即
perform action "AXShowMenu" of menu button 1 of text field 1 of...。我很惊讶您的代码完全有效(显然 AppleScript 有时可以通过上下文找出索引),但最好是具体的。
标签: applescript imessage uiaccessibility