MacOS学习三:NSOpenPanel调用文件选择器

同样是项目需求,要调用mac本地文件做一些处理!

不废话,直接上代码!

NSButton *findBtn = [[NSButton alloc] init];

findBtn.title = @"添加文件";

findBtn.frame = CGRectMake(230, CGRectGetMaxY(self.view.frame) - 50, 60, 20);

[self.view addSubview:findBtn];

findBtn.target = self;

[findBtn setAction:@selector(findFile)];

这个是一个按钮,它的点击事件就是要调用文件选择器,选择本地文件

#pragma 添加文件

-(void)findFile{

NSOpenPanel *panel = [NSOpenPanel openPanel];

[panel setCanChooseFiles:YES];//是否能选择文件file

[panel setCanChooseDirectories:YES];//是否能打开文件夹

[panel setAllowsMultipleSelection:YES];//是否允许多选file

NSInteger finded = [panel runModal]; //获取panel的响应

     if (finded == NSFileHandlingPanelOKButton) {

    //  NSFileHandlingPanelCancelButton = NSModalResponseCancel;     NSFileHandlingPanelOKButton = NSModalResponseOK,

            for (NSURL *url in [panel URLs]) {

                  NSLog(@"--->%@",url);

                  //这个url是文件的路径

                  //同时这里可以处理你要做的事情 do something

             }

       }

}

如上面的代码,NSOpenPanel这个类就能调用起来文件选择器,它的对象创建方式只有一种:+ (NSOpenPanel *)openPanel;


MacOS学习三:NSOpenPanel调用文件选择器_第1张图片

DONE 个人学习整理分享,不喜勿喷,谢谢!!

你可能感兴趣的:(MacOS学习三:NSOpenPanel调用文件选择器)