美文网首页iOS之MAC端开发Mac OS开发
mac开发系列36: 模态窗口

mac开发系列36: 模态窗口

作者: 悲观患者 | 来源:发表于2017-08-14 15:37 被阅读108次

今天公司大哥帮忙解决了mac端模态窗口的问题,于是把这个重要事情记一下 ,好记性不如烂笔头,方便各位小伙伴需要

由于用的是NSWindowController ,在.h中 遵守<NSWindowDelegate>代理

  - (IBAction)renameFile:(id)sender {
      NSString*name =_fileName.stringValue;
      BOOLbAllEscape =TRUE;
      int index =0;
      for(int i =0; i < [name length] ; i++) {
      NSString* temp = [name substringWithRange:NSMakeRange(i,1)];
      if([temp compare:@" "] !=0) {
          bAllEscape =FALSE;
              index = i;
                break;
            }
          }
          name = [name substringFromIndex:index];
      }
            [NSApp stopModal];//这里需要把modal关闭
            [self close];
          }

代理方法

            - (BOOL)windowShouldClose:(id)sender{//代理方法
                    [NSApp stopModal];//关闭modal模式
                    returnYES;
                  }

在控制器创建窗口时

      -(void)renameWindow:(NSString*)judge origionName:(NSString*)oldName {
              self.renameWnd= [[RenameWnd alloc]initWithWindowNibName:@"RenameWnd"];
              self.renameWnd.judge= judge;
              [self.renameWnd loadWindow];
              [self.renameWnd selectItemFileName:oldName];
              [self.renameWnd showWindow:nil];
              [NSApp runModalForWindow:self.renameWnd.window];//加上这句话,开启modal模式
          }

现在已经做好模态窗口了.

相关文章

网友评论

本文标题:mac开发系列36: 模态窗口

本文链接:https://www.haomeiwen.com/subject/fwpurxtx.html