class AppDelegate: NSObject,NSApplicationDelegate { func applicationDIDFinishLaunching(aNotification: NSNotification) { openMyWindow() } func openMyWindow() { if let storyboard = nsstoryboard(name: "Main",bundle: nil) { if let vc = storyboard.instantiateControllerWithIDentifIEr("MyList") as? MyListVIEwController { var myWindow = NSWindow(contentVIEwController: vc) myWindow.makeKeyAndOrderFront(self) let controller = NSWindowController(window: myWindow) controller.showWindow(self) } } }}
我在IB中设置了Storyboard ID.
我已经跟踪了代码,它确实进入窗口打开代码,但它没有做任何事情.
顺便说一句,我确实有一个默认的故事板入口点设置,默认窗口打开确定但我需要打开第二个窗口,这是不起作用的.
执行openMyWindow()方法后,windowController将被释放,因此窗口为零.这就是它不存在的原因.您必须在您的班级中保持窗口以使其保持活动状态,然后窗口将可见.
var windowController : NSWindowController?总结
以上是内存溢出为你收集整理的macos – 在Swift中打开新窗口全部内容,希望文章能够帮你解决macos – 在Swift中打开新窗口所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)