2013-10-29 27 views
1

是否有一種方法可以在基於非文檔的應用程序中使用「command + n」創建/啓用多個窗口?我想要使​​用命令+ n如何在基於非文檔的應用程序中使用「command + n」創建多個窗口

無限制地使用該窗口的實例(實際上並不是無限的,但可能是6-7個實例)或者我必須創建一個基於文檔的應用程序,並將所有我的代碼移植到新項目模板中解決方案

我可以看到「新建」菜單按鈕現在被禁用。

回答

1

的幾種方法。 首先將新菜單項連接到IBAction方法。 無論對你有意義,都要命名該方法。

接下來,您將需要向控制器添加某種屬性(爲簡單起見,應用程序委託),它基本上是僅存儲對每個窗口或窗口控制器的引用的窗口堆棧。 NSMutableArray應該做得很好。

現在,您可以通過幾種方法來完成下一部分,但我會建議使用nib/xib創建NSWindowController子類(特別是如果這些窗口在其中具有相同的基本功能)。 做你想在筆尖文件。

現在在您的IBAction方法中,創建一個新的窗口控制器類實例,將其添加到您的可變數組中。告訴它加載它的窗口。

您只需決定是否應從堆棧中移除控制器,並在其窗口關閉時將其設置爲零。 許多方法來處理,並根據您的設計知道什麼是正確的。

0

試試這個: - 要做到這一點

NSWindowController *yourWindow=[[[[yourWindowController alloc]init]retain]autorelease]; 
[yourWindow loadWindow]; 
+0

我將如何1)使用此創建無限數量的窗口? 2)如何附加此代碼使用命令+ n 我已經嘗試過創建一個新窗口但不是無限制 – Saurabh

+0

您可以在此處粘貼您的代碼? –

+0

你的Windows控制器類的Bazically iniside實現這個 - (NSString *)windowNibName –

相關問題