程序关闭后,点击dock图标恢复窗口

1.在遵守NSApplicationDelegate的XXXdelegate.h里设置窗口的outlet

   在XXXdelegate.m里添加

- (BOOL)applicationShouldHandleReopen:(NSApplication *)sender hasVisibleWindows:(BOOL)flag
{
    if (flag) {
         return NO;
        }
    else
        {
        [window makeKeyAndOrderFront:self];
        return YES;
        }
}

2.连接outlet NSWindow *window和nib里的窗口,在Interface Builder中,将主窗口的”Release When Closed”选项取消掉。

3.设置NSApplication的委托为XXXdelegate,也就是file‘s ower的outlet delegate设置为XXXdelegate。




其他写法:

http://blog.cnrainbird.com/index.php/2012/10/23/osx_cheng_xu_dian_ji_dock_tu_biao_zhong_xin_dan_chu_chuang_kou/

- (BOOL)applicationShouldHandleReopen:(NSApplication *)theApplication
                    hasVisibleWindows:(BOOL)flag{
  if (!flag){
    //主窗口显示
    [NSApp activateIgnoringOtherApps:NO];
    [self.window makeKeyAndOrderFront:self];
  }
  return YES;
}


http://hintsforums.macworld.com/showthread.php?t=40039

- (BOOL)applicationShouldHandleReopen:(NSApplication *)theApplication
                                hasVisibleWindows:(BOOL)flag
{	
 if (flag) {
  return NO;
 } else {
  [mainWindow orderFront:self];
  return YES;
 }	
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值