所以,我正在浏览this来源,尝试使用NSPanel使用自定义弹出框创建其中一个状态栏应用程序 -
一切都很好,花花公子。单击菜单框调用[panel makeKeyandOrderFront:nil]
,在大多数情况下都可以使用 - 窗口通常会弹出正确的空间,而不是其他所有内容。
但是,如果我移动到全屏空间(例如全屏模式下的Xcode)并尝试在那里使用菜单应用程序,则面板会弹出错误的空间(之前提到的那个空间)并且没有任何显示在预定的空间。只有在第二次点击后才会出现在正确的位置。
有没有人对这种现象有解释?
答案 0 :(得分:2)
我也注意到了,虽然我没有解释,但我找到了解决方法。在PanelController.m的第249行,在closePanel
方法中,您必须将[self close]
更改为[self.window orderOut:self]
。