【发布时间】:2021-08-06 22:17:18
【问题描述】:
我经历了堆栈溢出,这看起来像是一个重复的问题,但这更像是对现有问题的扩展问题!
我面临一个非常奇怪的问题,在我的应用程序中,我们自定义了弹出按钮(继承自 NSPopupButton)。 当我使用 Apple Script 访问弹出项时,脚本无法从弹出列表中选择任何值。
让我更清楚!
例如。 想象一下弹出按钮有“汽车、自行车、自行车、公共汽车”作为它的项目。现在,如果我使用 AppleScript 选择 Bike 然后单击 Enter,则该值不会得到反映。但是如果我手动选择“自行车”,它将反映在应用程序中。 这是我写的脚本。
click menu button "Car" of window 1 of application process "My Sample Application" of application "System Events"
key code 125 //I am using these to navigate down the list
delay 1
key code 125 //I am using these to navigate down the list
delay 1
key code 125 //I am using these to navigate down the list
delay 3
key code 36 //This line simulated ENTER/Return key (or NOT?)
我也试过在 Apple Script 中运行这个命令
--set xxx to value of every button of menu button "Car" of window 1 of application process "LG Calibration Studio" of application "System Events"
这个命令应该显示弹出窗口中存在的所有项目,但不幸的是它返回一个空数组(或字典)。即使弹出窗口中填充了值,我也不确定为什么返回为空。
我是 Apple Script 的新手,在这个领域没有太多知识。任何帮助表示赞赏。 在此先感谢:)
【问题讨论】:
-
当您在应用程序中创建按钮时,是否有特殊原因需要编写用户界面脚本?
-
是的,只是帮助测试团队自动化一些“非常常见”的测试场景。我知道我们有 UITesting,但这个项目是测试团队开始的,而且他们大多无法访问我们的代码,而且他们也不熟悉 Xcode。
-
这能回答你的问题吗? Selecting Pop Up Menu Buttons in AppleScript
-
不,我已经试过了。我收到错误消息,告诉该属性没有退出。
标签: objective-c macos applescript popupmenu applescript-objc