我知道atomac UI自动化工具,我试图访问我的mac应用程序中的按钮,每次应用程序加载按钮UIElement树正在改变因为我无法在我的代码中重复使用,下面是我的代码
allButtons= allUIElement[5].findAllR(AXRole='AXButton')
print allButtons
position = allButtons[1].AXPosition
print position
size = allButtons[1].AXSize
print size
clickpoint = ((position[0] + size[0] / 2), (position[1] + size[1] / 2))
print clickpoint
test20Window.clickMouseButtonLeft(clickpoint)
正如你在我的代码中看到的那样,我正在尝试访问UIElement [5]中的按钮,当应用程序下次加载时会动态更改为6,7或1,因为我想要它点击的按钮是没发生
答案 0 :(得分:0)
我看到你刚才问过这个问题,但我希望这会有所帮助:
your_app = atomac.getAppRefByLocalizedName("Your App Name")
app_window = your_app.windows()[0]
buttons = app_window.findAllR(AXRole='AXButton')
your_button = buttons[0]
button_position = your_button.AXPosition
button_size = your_button.AXSize
clickpoint = ((button_position[0] + button_size[0] / 2), (button_position[1] + button_size[1] / 2))
your_button.clickMouseButtonLeft(clickpoint)
这样您就可以动态找到应用程序窗口。