如何多次使用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 (将#修改为@)