上周我花了很多时间摆弄以下问题。我解决了它,但由于我在这里找不到答案,我想与任何遇到此问题的人分享我的解决方案。
问题:我的应用程序在后台运行(菜单栏),其主NSWindow
包含我的应用程序的所有首选项。您可以点击左上角的关闭按钮关闭NSWindow
。关闭NSWindow
并重新打开后,所有NSControl
都没有在视觉上做出响应。这些行动相应地起作用,但它们没有更新。
我尝试了以下内容:
NSWindow
NSWindow
NSControl
s NSControl
上致电 “成为第一响应者” NSView
NSControl
(为NSControl
工作,但为每一个使用它的工作太多了)NSControl
s 我会在下面发布我的解决方案以供记录。
答案 0 :(得分:0)
我对此问题的解决方案是继承NSWindow
并覆盖以下方法:
- (void)performClose:(id)sender{
[self orderOut:nil];
}
- (void)close{
[self orderOut:nil];
}
现在NSWindow
隐藏 / 已订购,您只需在显示时重新订购。