2012-06-15 55 views
2

我正在創建一個OS X應用程序與多個窗口。主窗口按預期出現在「窗口」菜單中。窗口不顯示在窗口菜單

我使用initWithWindowNibName創建第二個NSWindow。當我打電話給showWindow時,它看起來如預期的那樣。然而,該窗口並未顯示在「窗口」菜單中(在「全部置於前面」和主窗口的名稱下)。

我想:

[[NSApplication sharedApplication] addWindowsItem:[winController window] 
               title:@"The Window" 
               filename:NO]; } 

我也試過:

[[winController window] setExcludedFromWindowsMenu:NO]; 

這些都不似乎幫助。

如果你不能說,我是OS X的新手(但我相對熟悉Obj-C)。

回答

2

我想通了。我在NSResponder的init函數中創建窗口。不知何故,它發生得太早,sharedApplication尚未準備好。當我將窗口創建移動到awakeFromNib時,一切都按預期工作。

0

窗口編程指南指出:「該菜單自動列出具有標題欄並可調整大小的窗口,並且可以成爲主窗口」。是否有一個原因,這個窗口不能成爲主要的,例如,它是一個NSPanel

+0

我知道,那對我來說是如此令人困惑。它是通過轉到文件>新建>新建文件並選擇「用戶界面」和窗口創建的Xib。然後我有我創建的NSWindowController的一個子類 [[MyNSWindowController alloc] initWithWindowNibName:@「MyWindowXIB」] – redfood