当 CGWindow 部分离屏时,如何判断 CGWindow 显示在哪个屏幕上?

Dan*_*bbs 10 macos window screen core-graphics

我得到一个CGWindows列表,CGWindowListCreate如下所示:

CFArrayRef windows = CGWindowListCreate(kCGWindowListOptionOnScreenOnly, 0);
Run Code Online (Sandbox Code Playgroud)

有没有办法知道NSScreen每个窗口在哪个窗口?我试图查看窗口边界和屏幕框架的交集,但如果一个窗口部分离开屏幕,它可以与另一个屏幕的框架相交。

有没有更可靠的方法来做到这一点?