内置的电池,Wi-Fi,声音等,Apple提供的状态项,可以通过使用cmd +点击并拖动拖动到菜单上的任何位置:
如何在我自己的状态项中支持类似功能?
答案 0 :(得分:11)
有两种方法可以在菜单栏的右侧获取菜单。官方支持的方式是在您的应用中创建NSStatusItem
。其他方法是创建NSMenuExtra
。您已经注意到一个区别:NSStatusItem
菜单已固定到位,而菜单附加功能可以通过cmd拖动来移动。
另一个主要区别以及第三方菜单附加功能未得到官方支持的原因是,与状态项(作为单独的应用程序运行)不同,菜单附加功能会加载到SystemUIServer进程的地址空间中。这意味着如果他们发生混乱并崩溃,他们就可以取消用户界面。
您可以在/System/Library/CoreServices/Menu Extras
处看到系统上安装的菜单附加功能。可能仍然可以创建自己的操作系统并加载操作系统,但如果您尝试发送结果,则会遇到问题。最好去bugreport.apple.com,让他们知道NSStatusItems应该是可拖动的。
Wikipedia has more info on Menu Extras,包括指向tutorial on building your own的一些链接。