在活动的 OS X 桌面上保留一个窗口
Posted
技术标签:
【中文标题】在活动的 OS X 桌面上保留一个窗口【英文标题】:Keeping a window on the active OS X desktop 【发布时间】:2014-08-15 13:16:00 【问题描述】:在 OS X Mission Control 中,用户可以创建多个桌面。
如果出现系统消息,例如在系统偏好设置中单击挂锁时请求身份验证,则在用户切换桌面时,消息对话框将始终可见;消息对话框移至活动桌面。
如何使用我自己的对话框创建相同的行为。目前我在 Qt 中有一个基于 QDialog 的消息对话框的应用程序。
使用 Qt 是可取的,但如果 Qt 无法做到这一点,那么如何使用本机 Objective-c (Cocoa) 窗口来做到这一点?
【问题讨论】:
【参考方案1】:如果您设置窗口标志Qt::Popup
它应该显示在活动桌面空间上,这就是 QMessageBox 的工作方式 IIRC 并且肯定会显示在活动桌面空间上。
编辑; https://***.com/a/16882717/741595 展示了如何使用 Cocoa 桥接器。
【讨论】:
不,这行不通。它只是删除了标题栏,并且在我切换桌面时仍然无法移动到活动桌面。我可以让对话框出现在当前活动桌面上,但我需要它随着活动桌面的变化而移动。以上是关于在活动的 OS X 桌面上保留一个窗口的主要内容,如果未能解决你的问题,请参考以下文章
Windows 10 中非活动桌面上的 PrintWindow
在 OS X 上使用 objc 最小化 Finder 窗口时遇到问题