我试图以编程方式在我的macOS应用程序中显示一个窗口。我想以编程方式执行此操作的原因是因为用户单击“登录”按钮,结果函数取决于登录的成功。如果成功,则显示窗口;否则,它不是。
以下是我的Xcode窗口的屏幕截图:
以下是我在代码中尝试的内容(course = prof.course_set.all()
是我创建的一个类,可以更轻松地显示Alert
对话框):
NSAlert
Apple {{}}的文档几乎不存在,我见过的其他方法似乎与早期版本的Swift有关。
我做错了什么?
答案 0 :(得分:2)
好吧,所以这不是我原本想要做的,但这种方式要好得多,而且我真的在寻找。
let vcStores = self.storyboard?.instantiateController(withIdentifier: NSStoryboard.SceneIdentifier("vcStores"))
as! NSViewController
self.view.window?.contentViewController = vcStores
这将只是用Interface Builder中定义的视图vcStores
中的内容替换窗口的内容。
This video也有帮助,尽管对于iOS和Swift 3.我一开始就尝试创建一个新的NSWindow
,因为我已经习惯于在Java Swing或C#Windows Forms中进行桌面开发。但我喜欢像这样切换窗口内容是多么容易。