gpt4 book ai didi

macos - NSWindow 关闭时退出应用

转载 作者:行者123 更新时间:2023-12-04 02:42:41 27 4
gpt4 key购买 nike

当主(唯一)关闭时,如何正确退出 Mac OS X 应用程序?

我知道有一个方法- (void)windowWillClose:(NSNotification *)notificationNSWindowDelegate .但它在我的情况下不太合适,因为它是在 NSWindow 之前调用的。关闭。

最佳答案

您不能拥有 windowDidClose事件,因为伴随它的通知将持有一个无效对象(窗口很可能在关闭时被释放)。为了实现你所需要的,让你的类成为应用程序的委托(delegate),并实现以下方法:

- (BOOL) applicationShouldTerminateAfterLastWindowClosed: (NSApplication *) theApplication;

通过该方法,返回 YES .

如果您的 Controller 对象在 MainMenu.nib 中有一个实例,只需从文件所有者(即 MainMenu.nob 文件中的应用程序对象)建立连接。 Control-Drag 从 File's Owner 到您的对象,并连接代理 socket 。

或者在源代码中,在 Controller 对象的 init 方法中添加如下内容:
[NSApp setDelegate: self];

关于macos - NSWindow 关闭时退出应用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3941960/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com