我正在开发Win / MacOS游戏应用。 当用户关闭应用程序时,我想显示确认弹出窗口“你确定要离开吗?”。
在Windows上,我会收听WM_CLOSE
消息来拦截 Alt-F4 。然后,如果用户选择“是,我想离开” - 我致电PostQuitMessage(0);
退出应用。
如何在Mac OS上拦截 Cmd + Q ?并且,如果用户选择“是,我想离开” - 如何关闭应用程序(即默认情况下如何执行与 Cmd + Q 相同的操作)?
MacOS部分是用简单的Objective-C编写的,我正在寻找Objective-C中的答案。
答案 0 :(得分:2)
实施applicationShouldTerminate
的委托方法NSApplication
并显示自定义模式提醒。取决于答案返回NSTerminateNow
,NSTerminateCancel
或NSTerminateLater
。
如果是NSTerminateLater
,您可以稍后致电[NSApp replyToApplicationShouldTerminate:YES];
以最终退出该应用。