【发布时间】:2014-02-26 11:34:31
【问题描述】:
我正在制作一个显示视频和图像幻灯片的 Cocoa 应用程序。如果连接了多个屏幕(例如连接到 Mac Mini),我希望在每个屏幕上显示不同的内容。每个 NSWindow 在每个 NSScreen 上都应该是全屏的。
在 OSX 10.8 上开发时,我使用 NSBorderlessWindowMask 将每个 NSWindow 框架设置为 NSScreen 框架。我没有在 NSApplication 上明确使用 NSApplicationPresentationFullScreen,我使用了 NSApplicationPresentationHideDock 和 NSApplicationPresentationAutoHideMenuBar。
这种方法似乎存在一些问题。一些 OSX 事件似乎会强制菜单栏进入视图并永久向下移动窗口。
既然 OSX Mavericks 更新了全屏支持,有没有更好的方法来解决这个问题?我可以在真正的全屏模式下打开一个 NSApplication 并为每个 NSScreen 强制一个单独的 NSWindow 吗?
谢谢。
【问题讨论】:
标签: macos cocoa nswindow nsapplication