【发布时间】:2011-06-13 12:40:07
【问题描述】:
当用户在正在运行的应用程序上用鼠标右键(或命令按钮 + 鼠标单击)单击 Dock 图标时 - 他可以看到 Dock 菜单。通常由 3 个部分组成:
此应用程序打开的所有文档的列表(红色)、自定义应用程序的菜单部分(黄色)和隐式添加到所有项目的默认项目(蓝色)。
Hereapple 解释说,我们可以通过实现应用程序委托的方法 ‑(NSMenu *)applicationDockMenu:(NSApplication *)sender 来定义这些自定义项(黄色),该方法应该返回一个有效的菜单(或通过在 Interface Builder 中定义这个 Dock 菜单)。
如果您尝试打开 Finder 的停靠菜单,您会看到一个不寻常的菜单:
这是不寻常的,因为它没有普通的退出项目和“选项”子菜单 - 就像任何其他启动的应用程序默认情况下一样。相反,它只有“隐藏”。
我很确定应用程序或 nib 文件可以覆盖 Dock 菜单的默认“系统”(蓝色)部分。也许有人知道如何实现这一目标?
我正在开发一个不应被允许退出或选择在“登录时”启动的安全应用程序,但它应该在用户登录时一直运行(就像 Finder 一样,它可能只使用强制应用程序退出或活动监视器)。我有充分的理由想要摆脱它。我知道这不完全是 Mac OS 的方式,但这不完全是一个普通的应用程序。 有没有人做过类似的事情?
谢谢
【问题讨论】:
标签: cocoa