是否有一种方法可以在非基于文档的应用程序中使用“命令+ n”创建/启用多个窗口?我希望使用命令+n拥有无限的窗口实例(实际上不是无限的,但可能是6-7个实例)。
或者我必须创建一个基于文档的应用程序并移植我在新项目模板中的所有代码是唯一的解决方案?
我现在可以看到"New“的菜单按钮是禁用的。
发布于 2013-10-29 14:06:12
做这件事的几种方法。首先,将新建菜单项连接到IBAction方法。无论什么对你有意义,都要给这个方法起名字。
接下来,您需要向控制器添加某种属性(简单性的应用委托),它基本上是一个窗口堆栈,只存储对每个窗口或窗口控制器的引用。NSMutableArray应该做得很好。
现在您可以用几种方法完成下一部分,但是我建议创建一个带有nib/xib的NSWindowController子类(特别是如果这些窗口中包含相同的基本内容)。在笔尖文件中做你想做的事。
现在,在IBAction方法中,创建窗口控制器类的新实例,将其添加到可变数组中。让它装上它的窗户。
您只需决定控制器是否应从堆栈中移除,并在其窗口关闭时设置为零。处理这个问题的方法很多,直到你的设计才能知道什么是正确的。
发布于 2013-10-29 12:18:20
试试这个:-
NSWindowController *yourWindow=[[[[yourWindowController alloc]init]retain]autorelease];
[yourWindow loadWindow];
https://stackoverflow.com/questions/19657655
复制相似问题