我正在编写一个位于菜单栏中的mac应用程序,并在用户单击状态项时向其显示NSPanel
个实例。我想在打开另一个状态项的菜单时隐藏窗口。现在,我的小组保持开放;它看起来像这样:
当其他状态项打开其菜单时,我看到其他类似的应用程序关闭,所以我想知道他们知道哪些通知会消失。我查看了NSWindowDelegate
和NSApplicationDelegate
,但我没有看到生成任何通知。
有什么建议吗?
答案 0 :(得分:4)
我明白了!在awakeFromNib
中,我设置了NSPanel
实例的属性。我使用以下内容:
[panel setStyleMask:panel.styleMask ^ NSTitledWindowMask];
将其切换为以下内容:
[panel setStyleMask:(panel.styleMask ^ NSTitledWindowMask ^ NSNonactivatingPanelMask)];
诀窍。我在阅读Neil Inglis' blog post后以类似的方式使用MAAttachedWindow时想出来了。