【发布时间】:2012-03-17 13:34:37
【问题描述】:
我在某个 Finder 的窗口中单击鼠标右键。我得到了点击的位置(它的 CGPoint)。我怎么知道那个点是什么项目?
【问题讨论】:
标签: objective-c macos applescript finder
我在某个 Finder 的窗口中单击鼠标右键。我得到了点击的位置(它的 CGPoint)。我怎么知道那个点是什么项目?
【问题讨论】:
标签: objective-c macos applescript finder
您可以使用下面的苹果脚本获取所选项目
tell application "Finder"
selection
end tell
【讨论】:
如果 Parag Bafna 的建议对您不起作用,您将不得不手动执行此操作。基本上一个 Finder 项目有一个位置属性。但是,您返回的坐标位于窗口坐标中。我假设您的 CGPoint 位于全局坐标中,因此您必须将窗口坐标转换为全局坐标。你可以很容易地做到这一点,因为窗口有它自己的坐标,所以你可以计算出 Finder 项目的全局坐标。
因此,使用 Finder 项目的位置属性进行一些工作是可行的。
tell application "Finder"
tell window 1
set theItems to items
set oneItem to item 1 of theItems
return position of oneItem
end tell
end tell
【讨论】: