我正在编写一个 Mac Cocoa 应用程序来操作数据库文件,可以使用 NSDocument 技术轻松实现,因为它们直接与磁盘文件相关。
但是,大多数应用程序都会操作该数据库中的项目。当用户打开数据库项目时,应该出现一个新窗口以允许查看、编辑、保存该项目,因此数据库项目不直接与磁盘文件相关。请注意,撤消和重做在这里是合适的。
对于数据库窗口和数据库项窗口都使用 NSDocument
技术是否合适,或者是否有更好的方法?
最佳答案
我认为使用NSDocument
将是一个不错的选择。它将允许您利用大多数提供的功能,例如 NSDocumentController、撤消支持、窗口管理等。您必须重写一些方法,例如加载和保存。对于这些文档,“打开最近的”菜单可能很难正常工作(也许使用自定义 URL 方案?)。使用 NSDocument 的缺点是……我想不到。您必须从头开始编写所有内容,并且将它们集成到应用程序的其余部分会更加困难。
关于macos - 当大多数应用程序 'documents' 不是基于文件时,NSDocument 是正确的选择吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9006453/