Button 从窗口菜单获取按钮列表-AppleScript

Button 从窗口菜单获取按钮列表-AppleScript,button,menu,applescript,itunes,automator,Button,Menu,Applescript,Itunes,Automator,我可以得到一个主菜单项,并且可以使用系统事件来选择并单击窗口中的特定按钮。我遇到了一个问题,我想获得属于弹出“表”的按钮的“句柄”。例如,iTunes中的“airplay”按钮: 我可以使用类似于以下内容的按钮单击打开工作表: click button 10 of window "iTunes" of application process "iTunes" of application "System Events" 我还可以使用键code手动上下滚动,尽管我正在寻找一种最高效、最优雅的解

我可以得到一个主菜单项,并且可以使用系统事件来选择并单击窗口中的特定按钮。我遇到了一个问题,我想获得属于弹出“表”的按钮的“句柄”。例如,iTunes中的“airplay”按钮:

我可以使用类似于以下内容的按钮单击打开工作表:

click button 10 of window "iTunes" of application process "iTunes" of application "System Events"
我还可以使用
键code
手动上下滚动,尽管我正在寻找一种最高效、最优雅的解决方案,来选择我想要的特定按钮(在本例中,我的名字是“计算机”)

我正在使用辅助功能检查器,可以获得有关菜单的一些信息:

<AXApplication: “iTunes”>
 <AXWindow: “iTunes”>
  <AXMenu>
   <AXMenuItem: “AirPort Express”>

Attributes:
   AXRole:  “AXMenuItem”
   AXRoleDescription:  “menu item”
   AXParent:  “<AXMenu>”
   AXEnabled:  “1”
   AXPosition:  “x=1070 y=798”
   AXSize:  “w=146 h=22”
   AXTitle:  “AirPort Express”
   AXHelp:  “(null)”
   AXSelected (W):  “1”
   AXMenuItemCmdChar:  “(null)”
   AXMenuItemCmdVirtualKey:  “(null)”
   AXMenuItemCmdGlyph:  “(null)”
   AXMenuItemCmdModifiers:  “0”
   AXMenuItemMarkChar:  “(null)”
   AXMenuItemPrimaryUIElement:  “(null)”

Actions:
   AXCancel - cancel
   AXPress - press

在自定义菜单上无法执行此操作:
-->

可以通过弹出按钮进行操作<代码>-->-->


您必须继续使用
键代码

这在自定义菜单上是不可能的:
-->

可以通过弹出按钮进行操作<代码>-->-->


您必须继续使用
键代码

您需要使用辅助功能检查器中显示的层次结构。菜单在弹出之前不可用,因此您可能需要稍等-我没有任何外部扬声器要测试,但您可以执行以下操作:

tell application "System Events"
    click button 10 of window "iTunes" of application process "iTunes"
    delay 1 -- give menu time to pop up
    click menu item "Computer" of menu 1 of window "iTunes" of application process "iTunes"
end tell

您也可以在弹出菜单后使用前菜单的
单击菜单项“Computer”
。如果索引不正确,您通常可以通过弹出菜单来回溯层次结构,然后获取菜单以找到正确的索引,然后获取菜单的菜单项,等等。

您需要使用辅助功能检查器中显示的层次结构。菜单在弹出之前不可用,因此您可能需要稍等-我没有任何外部扬声器要测试,但您可以执行以下操作:

tell application "System Events"
    click button 10 of window "iTunes" of application process "iTunes"
    delay 1 -- give menu time to pop up
    click menu item "Computer" of menu 1 of window "iTunes" of application process "iTunes"
end tell

您也可以在弹出菜单后使用前菜单的
单击菜单项“Computer”
。如果索引不正确,您通常可以通过弹出菜单来回溯层次结构,然后获取菜单以找到正确的索引,然后获取菜单的菜单项,等等。

我担心有人会这么说!!!干杯(为了以防万一,我会让它再打开一点!)我害怕有人会这么说!!!干杯(为了以防万一,我会让它再打开一点!)不会,因为系统事件(可访问性)找不到这些菜单。在应用程序进程“iTunes”的窗口“iTunes”的延迟
返回菜单之后使用这一行,结果-->{}这是一个伟大的诊断!谢谢,我以后会用的!否,因为系统事件(可访问性)找不到这些菜单。在应用程序进程“iTunes”的窗口“iTunes”的延迟
返回菜单之后使用这一行,结果-->{}这是一个伟大的诊断!谢谢,我以后会用的!