我正在创建一个可可应用程序,并且正在使用 NSWindowController 加载首选项窗口。
当用户选择首选项按钮并打开首选项窗口时
我希望应用程序在返回后台应用程序之前强制用户完成他们对新打开的窗口控制器所做的事情。
有没有办法阻止后台发生的事情并强制用户完成与前台的交互?
塔肯
我正在创建一个可可应用程序,并且正在使用 NSWindowController 加载首选项窗口。
当用户选择首选项按钮并打开首选项窗口时
我希望应用程序在返回后台应用程序之前强制用户完成他们对新打开的窗口控制器所做的事情。
有没有办法阻止后台发生的事情并强制用户完成与前台的交互?
塔肯
也许这行得通?创建HUD窗口的子类并实现
- (BOOL)resignFirstResponder {
if (userMayLeave) return YES;
return NO;
}
您可以使用以下方法来实现此目的并将您的窗口显示为模式:
[[NSApplication sharedApplication] runModalForWindow:aWindow];
然后,您需要在模态窗口中使用以下方法之一才能将其关闭:
[[NSApplication sharedApplication] stopModal];
[[NSApplication sharedApplication] abortModal];
[[NSApplication sharedApplication] stopModalWithCode:anInteger];