0
点赞
收藏
分享

微信扫一扫

MacOS app选择文件目录和文件NSOpenPanel使用swift代码

文章目录


Mac app开发跟ios开发有点区别,网上教程比较少
这个例子是,点击按钮以后,打开选择文件夹的窗口,可以多选文件夹,另一个按钮可以多选文件.然后打印出目录

运行效果

在这里插入图片描述

NSOpenPanel讲解

首先把2个按钮连线到swift文件中,2个按钮代码如下:
NSOpenPanel 创建对象以后通过 设置属性canChooseDirectories和canChooseFiles实现打开文件或者文件夹
通过block beginSheetModal实现打开文件窗口.

代码例子

 @IBAction func btnOpenFileClick(_ sender: Any) {
        let openPanel = NSOpenPanel()
        openPanel.prompt = "选择"
        openPanel.canChooseDirectories = false //不允许选择目录
        openPanel.canChooseFiles = true //选择文件
        openPanel.allowsMultipleSelection = true//允许多选
        openPanel.beginSheetModal(for: view.window!) { result in
            if result != .OK {//result是点击的结果,如果点击确定result == .OK
                print("点击取消")
                return
            }
            //遍历多选的所有路径
            for url in openPanel.urls{
                print("路径是=",url.path)
            }
        }
    }
    
    @IBAction func btnOpenDirClick(_ sender: Any) {
        
        let openPanel = NSOpenPanel()
        openPanel.prompt = "选择"
        openPanel.canChooseDirectories = true //
        openPanel.allowsMultipleSelection = true
        openPanel.canChooseFiles = false
        openPanel.beginSheetModal(for: view.window!) { result in
            if result != .OK {
                print("点击取消")
                return
            }
            //遍历多选的所有路径
            for url in openPanel.urls{
                print("路径是=",url.path)
            }
            
        }
    }

swift代码 demo下载

举报

相关推荐

0 条评论