最后一个窗口关闭后退出应用程序

| 我想在最后一个主窗口关闭时关闭我的应用程序。由于以下原因,我不能使用
applicationShouldTerminateAfterLastWindowClosed:
: 1.在显示主窗口之前,将显示一个确认窗口,并且在关闭该窗口时,不应退出应用程序。 2.即使关闭了任何帮助窗口,应用程序也应在关闭主窗口后退出。     
已邀请:
您需要做的是将控制类设置为主窗口的委托,然后使用NSNotificationCenter添加一个以NSWindowWillCloseNotification为对象的观察者。像这样
NSNotificationCenter *c = [NSNotificationCenter defaultCenter];
[c addObserver:self selector:@selector(yourSelector) name:NSWindowWillCloseNotification object:yourWindow];
现在,当主窗口关闭时,将调用方法yourSelector,因此该方法中只有exit(0)之类的内容; 欲了解更多信息,请在这里查看windowWillClose     
您仍然可以使用
applicationShouldTerminateAfterLastWindowClosed:
将其写入以返回
NO
,直到您首次显示主窗口为止。从那时起让它返回
YES
。 NSPanel实例不计入打开的窗口。因此,如果您的帮助窗口是NSPanel,这将起作用。     

要回复问题请先登录注册