Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Macos 如何找到最顶级的NSPanel_Macos_Cocoa - Fatal编程技术网

Macos 如何找到最顶级的NSPanel

Macos 如何找到最顶级的NSPanel,macos,cocoa,Macos,Cocoa,我的应用程序创建了几个NSPanel类的浮动面板,其中只包含NSPanel按钮。我需要通过编程找到在给定时刻这些面板中的哪一个是最上面的 不幸的是,[NSApp orderedWindows]不包括NSFloatingWindowLevel级别的窗口。 如何执行此操作?您可以使用检索系统中的所有窗口,并检查属于您的进程的窗口 非常感谢你的建议。我怀疑我必须走那条路。事实上,我最终得到了一个基于[NSWindowList][1]而不是CGWindowListCopyWindowInfo的类似解决方

我的应用程序创建了几个NSPanel类的浮动面板,其中只包含NSPanel按钮。我需要通过编程找到在给定时刻这些面板中的哪一个是最上面的

不幸的是,[NSApp orderedWindows]不包括NSFloatingWindowLevel级别的窗口。
如何执行此操作?

您可以使用检索系统中的所有窗口,并检查属于您的进程的窗口

非常感谢你的建议。我怀疑我必须走那条路。事实上,我最终得到了一个基于[NSWindowList][1]而不是CGWindowListCopyWindowInfo的类似解决方案。但由于NSWindowList被标记为已弃用,我将尝试使用CGWindowListCopyWindowInfo。[1] :苹果公司几乎在每一次SDK更新中都不喜欢这些东西,我怀疑他们的一位工程师正在不喜欢业余爱好者: