Macos Applescript-获取元素的坐标

Macos Applescript-获取元素的坐标,macos,applescript,mouseevent,coordinates,Macos,Applescript,Mouseevent,Coordinates,我需要获取元素的坐标{X,Y},以便在元素上生成单击事件(我不能使用“单击”来实现这一点,因为系统事件在执行此操作时遇到问题并返回:“缺少值”)。我将使用这些坐标将它们传递给模拟鼠标单击的命令行工具 如何实现这一点?您可以获取ui元素的属性吗?我想你可以,即使你不能点击它。其中一个属性应为“位置”,另一个属性应为“大小”。这两件事应该可以帮助您找到屏幕坐标,以便您可以单击元素 例如,试试这个,看看属性 tell application "System Events" tell proce

我需要获取元素的坐标{X,Y},以便在元素上生成单击事件(我不能使用“单击”来实现这一点,因为系统事件在执行此操作时遇到问题并返回:“缺少值”)。我将使用这些坐标将它们传递给模拟鼠标单击的命令行工具


如何实现这一点?

您可以获取ui元素的属性吗?我想你可以,即使你不能点击它。其中一个属性应为“位置”,另一个属性应为“大小”。这两件事应该可以帮助您找到屏幕坐标,以便您可以单击元素

例如,试试这个,看看属性

tell application "System Events"
    tell process "Safari"
        properties of UI element 1 of window 1
    end tell
end tell
如果我想知道元素中间的坐标,你可以点击它,这会给你点击的位置的x和y坐标

tell application "System Events"
    tell process "Safari"
        tell UI element 1 of window 1
            set p to position
            set s to size
        end tell
    end tell
end tell

set xCoordinate to (item 1 of p) + (item 1 of s) / 2
set yCoordinate to (item 2 of p) + (item 2 of s) / 2
return {p, s, xCoordinate, yCoordinate}