微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

objective-c – Cmd单击以移动状态项

通过使用cmd单击并拖动,可以将Apple提供的状态项内置电池,Wi-Fi,声音等拖动到菜单上的任何位置:

如何在我自己的状态项中支持类似的功能

解决方法

有两种方法可以在菜单栏的右侧获取菜单.官方支持的方式是在您的应用程序中创建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的一些链接.

原文地址:https://www.jb51.cc/c/110634.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐