Jiu*_*hao 1 cocoa menu exit menuitem
我的停靠菜单总是自动添加"退出"和其他2个菜单项,我该如何阻止/修改它们?
更新:
真的没办法删除/阻止/重定向"退出"菜单项.最后使用彼得的建议就像对他人有帮助的打击希望
- (NSApplicationTerminateReply)applicationShouldTerminate:(NSApplication*)sender {if(needPassword){[self checkPassword:self]; 返回NSTerminateCancel; } else {return NSTerminateNow; }}
- (void)checkPassword:(id)sender {if(passwordCorrect){
!needPassword; [[NSApplication sharedApplication] terminate:self]; }}
试图拦截用户可能告诉您的应用程序退出的所有可能方式肯定会失败.(你还记得Quit Apple Event吗?)
在应用程序的委托中实现该applicationShouldTerminate:方法既简单又有效.拿起密码面板并返回NSTerminateLater.然后,当用户要么输入正确的密码或取消,给应用一个replyToApplicationShouldTerminate:消息.
无论你退出哪个Quit命令(菜单项等),都要把它们放回去.让用户以正常方式调用正常的Quit命令; 这将触发上述应该终止的程序,以确定退出是否真的会发生.
| 归档时间: |
|
| 查看次数: |
1405 次 |
| 最近记录: |