Cocoa中单个窗口中的多个文档

tit*_*coy 8 cocoa document-based nsdocument

我想通过选项卡式界面编写一个可能在一个窗口中有多个文档的应用程序.我应该避免使用NSDocument架构(基于Cocoa文档的应用程序模板)吗?据我所知,它每个文档只支持一个或多个窗口,反之则不然.

我已经和这个问题争论了一段时间,并且已经在NSDocument架构上构建了我的大部分应用程序但是我无法想出一个将多个文档与单个窗口相关联的好方法.

编辑:除了基本的文档窗口,我想要项目文档窗口.在这种复杂程度上,还是值得攻击NSDocument架构吗?Apple是否使用NSDocument架构编写Xcode(以这种方式工作)?

KPM*_*KPM 6

我有相同类型的项目 - 我想在一个窗口中显示不同的独立文档,侧边栏允许在文档之间切换 - 所以我自己做了一些搜索.

我刚刚通过阅读Cocoadev的基于文档的应用程序与所有文档的一个窗口参考,找到了一个有趣的领导.从MikeTrent的回答看来,使用NSDocument是一种非常可行的方法.您只需要子类化NSDocumentController.

我也喜欢Abhi的想法,即使用无边框的儿童窗户.


Mar*_*eau 3

几年前,我尝试将 NSDocument 应用程序硬塞到单窗口选项卡式界面中,但几个月后我感到非常沮丧,我回去重构了文档架构部分。这并非不可能,但您最终要解决太多问题,以至于最终结果几乎不像一个正确的 NSDocument 应用程序。最好只是重写您确实需要的部分,而不是仅仅为了破坏 Cocoa 框架而编写大量代码。