在编写cocoa程序的时候需要多个窗口切换的时候就出现问题了,一个xib里如果有多个窗口那么,就不容易管理了,一般情况下可以创建单独的xib用来存放窗口。

每一个窗口需要有一个单独的NSWindowController来控制,这个窗口对应的xib文件的file's owner设置成这个NSWindowController的子类,将窗口中的按钮与File's owner相连接即可.

在AppDelegate里把window成员删掉,MainMenu.xib的窗口也删掉,这样程序就没有默认的窗口了。

给AppDelegate设置窗口控制器成员,无需设置IBOutlet,在需要实例化的时候实例化即可。

切换的时候可以使用KVO来监测窗口是否被关闭以及所选的信息。

窗口控制器的初始化方法是initWithNibName方法。