9

我想知道是否有可能让我的 NSWindow 绝对显示在所有内容之上。我目前使用代码将窗口级别设置为 CGShieldingWindowLevel ...

[self setLevel:CGShieldingWindowLevel()];

...这在大多数情况下做得很好,但这还不够。当任务控制或暴露处于活动状态时,不会绘制窗口,而是在鼠标下方绘制。我想知道是否有可能创建一个真正的“顶级”,将其绘制在所有这些元素之上。

任何帮助将不胜感激。谢谢!

4

1 回答 1

7

关于您关于 Expose 的问题,您可能只是没有正确设置您的收集行为。创建一个 的子类NSWindow,并在初始化的某个地方执行以下操作:

self.collectionBehavior = (NSWindowCollectionBehaviorStationary | NSWindowCollectionBehaviorIgnoresCycle);

如果您希望您的窗口在所有空间上(您可能会这样做),请不要忘记添加NSWindowCollectionBehaviorCanJoinAllSpaces.

就你关于鼠标的问题而言,不幸的是,我认为没有办法在它上面画图。

于 2013-01-16T05:08:48.663 回答