我遇到的问题是,当首选项窗口打开然后关闭时,它将无法再次打开。为什么会发生这种情况?如何解决这个问题?

编辑:刚注意到我也遇到了与主窗口相同的问题。

正在通过菜单栏打开窗口,该窗口位于单独的NIB文件中。

有帮助吗?

解决方案

听起来你忘了设置窗口控制器的“窗口”插座(在Nib中,文件所有者)指向你的窗口。连接“窗口”插座后,窗口控制器的showWindow:方法将起作用。

其他提示

很难说没有看到代码,但有一种可能性是你有“发布时关闭”检查Interface Builder中的窗口,然后加载一次,缓存它,然后希望能够关闭并重新打开它,而无需再次从笔尖加载。

对于像我这样的任何其他新手,有这个问题:)

不要忘记将文件的所有者类设置为与控制器类相同,然后您可以将“窗口”插座连接到面板。

我在Aaron Hillegass的Cocoa Programming for Mac OS X书中练习第12章(Nib文件和NSWindowController)练习时遇到了同样的问题。 Doug的答案是解决方案 - 我没有将Preferences.xib文件所有者的窗口连接到窗口本身(在本例中是Panel(Preferences)窗口)。

我右键点击了“文件所有者”在Preferences.xib文件中,然后将鼠标左键从Window插座拖动到Panel(Preferences)。完成并重建后,应用程序按预期工作。我可以关闭并重新打开自定义首选项面板,我之前的设置仍然存在(因为首选项窗口不会被隐藏卸载)。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top