好吧,这看起来简单而愚蠢,这就是我的情景:
简单?
不完全。
我尝试通过以下方式访问我的主窗口:
[[NSApplication sharedApplication] mainWindow]
[[NSApplication sharedApplication] windows]
然后发送makeKeyAndOrderFront:
消息,但它只是不显示。
我甚至尝试过显示所有窗口(是的,它仍然被视为“窗口”我正在使用的一两张(隐藏)纸张...),但仍然没有。
你能提出一个方法,我可以最终展示那个窗口,而不必在任何地方设置一个出口吗?
我不知道;我可能太累了不知道,但这件事几乎让人神经紧张......
答案 0 :(得分:6)
您可以取消最小化窗口:
if([aWindow isMiniaturized])
{
[aWindow deminiaturize:self];
}
然而,问题是窗口在最小化时将失去主要状态,因此您需要一些其他方法来识别窗口。
为什么你不能使用插座?
您可以让应用程序取消最小化所有最小化的窗口,如下所示:
for(NSWindow* win in [NSApp windows])
{
if([win isMiniaturized])
{
[win deminiaturize:self];
}
}
当应用启动时,您可以存储对主窗口的引用并注册NSWindowDidMiniaturizeNotification
。这将告诉您何时主窗口最小化,这也可能对您有帮助。