2010-11-25 71 views
8

我需要从视频应用程序中的插件启动模态窗口。我在Interface Builder中创建了一个Nib以及一个NSWindowController类。但是,当我尝试运行这样模态会话需要Mac上的模态窗口错误

Registration* newWin = [[Registration alloc] initWithWindowNibName:@"Options"]; 

[NSApp runModalForWindow: [newWin window]]; 

窗口它让我在控制台的错误:莫代尔会议要求模态窗口 我认为这是与Interface Builder中(请原谅我,我真的很新到IB)。

这里是指向Nib文件和类的链接。如果有人能告诉我我在IB做错了什么,我将不胜感激。谢谢。

[链接删除]

回答

17

您在笔尖文件实例化Registration一个实例。这不是您准备用于NSWindowController的笔尖文件的方式。 Registration对象是包含在nib文件中的不同对象,而不是您在上面引用的代码中分配的Registration对象。

传递给initWithWindowNibName笔尖,该File's Owner你在代码中创建NSWindowController实例。因此,在检查员中,将File's Owner的类名称设置为Registration,并将其出口window作为窗口对象放入nib文件中。

+0

啊!不能相信我错过了这一点。再次感谢!像魅力一样工作。 – rwb 2010-11-25 08:31:31