微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何多次使用NSOpenPanel?

如何解决如何多次使用NSOpenPanel?

在各种教程和文章的指导下,我正在Swift中为MacOS应用程序使用NSOpenPanel。我认为打开面板的当前首选方法是使用begin方法

我发现该面板是第一次按预期方式打开,但是第二次却无法打开该面板。这是我使用的代码的精简版:

    let openPanel = NSOpenPanel()
    //  varIoUs options
print("During")
    openPanel.begin { response in
print("Before: \(openPanel)")
        if response == .OK {
            //  Process
        }
    }
print("After")

BeforeAfter消息每次都会出现,但是During消息仅是第一次出现,从而确认.begin方法没有运行。

我也有一个NSSavePanel,它也有同样的问题。实际上,如果我打开一个,则另一个也不会工作。

我应该使用一个额外的步骤,还是某种方式使其始终正常工作?

我正在使用针对MacOS 11.5 Catalina的XCode12

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。