簡體   English   中英

如何在Macos的Cocoa應用程序中創建新工作區?

[英]How to make a new workspace in Cocoa app for MacOs?

我一直在為MacOs應用程序。 它們是MainMenu.xib中的一個窗口,我在其中放置了一組視圖。 一切正常。 現在,我發現能夠File->New並具有該窗口的新(第二個)空白副本將很有用。 我試圖將到窗口的連接從AppDelegate.m移到新的MainView.m對象,並進行File->New call [[aMainView window] makeKeyAndFront]但它似乎沒有任何作用。 我仍然只有一個窗口副本。

任何意見是極大的贊賞!

就像makeKeyAndOrderFront: Shabbir)正確指出的那樣, makeKeyAndOrderFront:只創建一個現有的窗口鍵並將其makeKeyAndOrderFront:在前面; 它不會創建新窗口。

您應該做的第一件事是將“ MainView”重命名為更准確地描述它是什么樣的東西。 它當然不應該是一種觀點。 在我講這個主題時, “主要”是指應用程序窗口中特定的內容 –意思與您的“主要”窗口(可能是也可能不是主要)不同,特別是如果用戶可以擁有多個其中之一。

我建議用NSWindowController完全替換MainView。 方便地,如果您創建NSWindowController的子類,則Xcode將為您提供一個創建筆尖的選項。 該筆尖將有一個窗口,每個窗口控制器將在需要時加載該窗口。

然后,讓您的“新建”菜單項創建一個新的窗口控制器,將其扔在堆上(您需要在某個位置保留可變的窗口控制器數組,以使它們都保持活動狀態,並且它們的窗口可見,尤其是在ARC下),並告訴窗口控制器以顯示其窗口。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM