使用 NSDocument 时如何隐藏保存面板

Posted

技术标签:

【中文标题】使用 NSDocument 时如何隐藏保存面板【英文标题】:How can I hide the save panel when I'm using a NSDocument 【发布时间】:2011-08-23 00:20:04 【问题描述】:

所以我正在尝试使用 WebKit 并创建自己的浏览器。但是,现在当我尝试关闭窗口时,我有点卡在无法隐藏保存面板的地方。我在隐藏面板的 NSDocument 参考中找不到任何方法。有谁知道我该如何解决?谢谢。

【问题讨论】:

【参考方案1】:

我不得不说NSDocument 对于浏览器应用来说是一个有点奇怪的选择。 Cocoa 文档架构实际上是为从磁盘加载和保存文件的编辑器类型的应用程序设计的,而在浏览器中并没有真正的“文档”概念。

为什么不直接实现一个管理一堆窗口控制器的主控制器呢?您认为您的应用需要什么文档架构?

【讨论】:

感谢您的快速回复。我之前曾尝试过研究,但这似乎比 NSDocument 方式复杂一些。你知道有什么网站可以教这个吗? 好吧,你只需要实现一个NSWindowController 的子类来管理你的浏览器窗口。然后你会有一些主控制器类来管理一个 NSMutableArray 包含你的 NSWindowController 子类的实例。您的主控制器可以通过实例化窗口控制器的新实例并显示它们的窗口来响应“新窗口”等菜单项。

以上是关于使用 NSDocument 时如何隐藏保存面板的主要内容,如果未能解决你的问题,请参考以下文章

login.do提交时如何使表单密码数据隐藏在Chrome开发者工具网络面板中?

如何同时保存 NSDocument?

从“NSDocument 即将关闭工作表”截取保存

Cocoa 自定义 NSDocument 保存

NSDocument 保存音频和视频文件

从启动服务中隐藏 NSDocument 子类