rb-appscript:访问父参考?

时间:2011-04-15 10:01:08

标签: appscript rb-appscript

是否有一种简单的方法可以找到引用的父元素引用?

例如,假设我有以下参考:

ref = app("System Events").processes["Safari"].windows[1].buttons[1]

我想做类似以下的事情:

ref.parent  # => app("System Events").processes["Safari"].windows[1].buttons

甚至:

ref.parent  # => app("System Events").processes["Safari"].windows[1]

我查看了文档和指南,但没有成功。我还通过猴子修补Appscript :: Reference类并添加了我自己的方法尝试了一个大禁忌,但它开始以难以排除故障的方式破坏我的规范。我也想过使用eval,但这看起来更糟糕。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

稍微下巴后,我想我可能有一个解决方案:

ref = app("System Events").processes["Safari"].windows[1].buttons[1]
ref.attributes[its.name.eq("AXParent")].value.get

返回

[app("/System/Library/CoreServices/System Events.app").application_processes["Safari"].windows["rb-appscript: Accessing parent reference? - Stack Overflow"]]

这是那种事吗?

伊恩