问题标签 [nssavepanel]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
macos - 除非我让用户选择路径,否则保存到路径不起作用
我使用此代码告诉我的第二个班级将文件保存到给定路径:
因此,该saveTo:
方法被调用。它首先检查给定的路径是否正常
然后它做一些事情并创建一个CGImageDestinationRef
:
dr
每次都是零。如果我saveTo
使用 a 给 a 路径,NSSavePanel
它不会抱怨并且工作正常。我尝试登录路径,saveTo:
但效果很好(例如/Users/Home/Desktop/Result.icns)。
换句话说,当上面的代码保存到/Users/Home/Desktop/Result.icns时它会失败,但是当我让用户决定使用 保存到同一路径NSSavePanel
时,没有问题。
我正在使用沙盒。我该如何解决这个问题?
icloud - 在 NSSavePanel/NSOpenPanel 中排除 iCloud 作为选项
我在幕后使用 iCloud 文件同步来使我的 Mac 应用程序的实例保持同步,因此我为此设置了权利。不幸的是,这意味着当我调用 NSSavePanel 时,iCloud 也会显示为可能的保存位置。
因为我的应用程序不会生成打算重复使用或重新导入我的应用程序的文件,所以我没有 iCloud 打开面板。但是,我的应用确实允许用户导出简单的 HTML 或 CSV 报告。我不希望一个合理的用户在我的应用程序中导出报告时选择 iCloud 作为他们的保存目的地,但 Apple 现在已将此标记为拒绝该应用程序的理由,因为他们可能会这样做,然后这些文件实际上被搁置在云。
当用户保存文件时,如何从潜在选项中抑制 iCloud?
objective-c - 保存文本文件时出现奇怪的日志消息
当我的应用程序显示“保存文件”窗格时,我在 xcode 的输出日志中收到一条我不理解的消息。
消息是 StressIt[38940:6d83] [QL] Can't get plugin bundle info at XTUM/ -- file://localhost/Users/kalle/Library/Developer/Xcode/DerivedData/StressIt-exmfuiykgzqebkbxzzwzsuzawjyk/Build/Products/调试/
我用谷歌搜索它,发现它似乎是 OSX 中的一个常见错误,但找不到与开发目标 c 相关的任何信息。有谁知道这是什么?我做错什么了吗?我可以修复它吗?
我被盗的保存文件的代码
macos - 让 NSSavePanel 忘记之前的目录
NSSavePanel
记住以前选择的目录。
我怎样才能让它忘记它,并恢复默认值?
我正在使用沙盒应用程序。
objective-c - 如何阻止 NSSavePanel 在完成块后关闭?
如果保存文件出现问题,我想将错误警报显示为保存工作表上的工作表,就像覆盖提示一样。但是,保存面板在完成块完成后立即关闭,并带有错误警报。
我可以取消在完成块中隐藏 NSSavePanel 吗?来自代表?从什么?
macos - NSDocument 的 NSSavePanel 的自定义附件视图
NSDocument
考虑支持两种文档类型(例如 BMP 和 JPEG)的 Cocoa 。虽然一种类型没有保存选项(例如 BMP),但另一种类型有(例如 JPEG 的压缩级别)。
你如何实现这一点?
我知道您应该覆盖prepareSavePanel:
并设置给定的附件视图NSSavePanel
。但是,这样做会用文档类型弹出窗口替换默认的附件视图。
如果使用自定义附件视图,是否需要重新创建文档类型弹出窗口?
如果是,如何将所选文档类型和附加保存选项传递给NSDocument
写入方法?
如果不是,我如何才能仅在选择了相应的文档(例如 JPEG)类型时才显示其他保存选项(例如压缩级别)?中是否有用于更改文档类型的委托方法NSSavePanel
?
objective-c - 在 NSSavePanel 中按下 OK 后不能调用 beginSheet?
我的可可程序有一个保存功能,当用户选择保存目的地时,我将不得不调出另一个 NSPanel,以显示某种状态(即完成保存文件需要多长时间。这是我的代码:
因此,一旦 NSSavePanel 消失(即按下 ok),我的 NSPanel 会显示 1/2 秒,然后它就消失了,即使我没有调用 NSApp endSheet
objective-c - 禁用 NSSavePanel“另存为:”文本输入字段
卡在这一段时间了。
有谁知道如何禁用 NSSavePanel 上的文本输入字段?这就是我使用它的方式:
非常感谢任何帮助。
谢谢
objective-c - 尝试打开保存对话框时 Cocoa 应用程序崩溃:等待窗口时发生超时
我编写了一个 HTML5 应用程序,并在 Cocoa for Mac 中为它制作了一个包装器。我正在编写一个方法,该方法将获取一个 url 并让用户将其保存到他们的磁盘上。到目前为止的方法如下:
但是,当我调用该方法时(在创建窗口很久之后),我的应用程序崩溃并且我在控制台中收到此错误:2013-07-21 18:23:05.067 Reditr[31458:d11f] RVS:__54-[NSRemoteSavePanel _runOrderingOperationWithContext: ]_block_invoke_0319 : 等待窗口超时
objective-c - 沙盒和保存文件
我知道沙盒的限制,并且我让用户保存文件的常用技术是通过NSSavePanel
,它会自动授予应用程序对该位置的必要权限,如用户所示。
现在,这是……不太常见的情况:
- 用户在我的应用程序中创建一个新文件
- 保存是第一次(所以,有一个很好的理由
NSSavePanel
出现) - 然后编辑文档的内容(请注意,我的应用程序不是典型
NSDocument
的兼容应用程序) - 最后他想重新保存它。(不是“保存(它)为..”,而是...“保存(它)”——因为他已经指定了一个位置,对吧?)
这怎么可能?实现这一目标的“批准”方式是什么?我读过关于书签的文章,但是 a) 我不确定它是否是我需要的,b) 我还没有找到任何真正的代码示例。
那么,有什么想法吗?
请注意:无论如何,该解决方案也必须在 10.6 中具有完整功能。
更新:嗯......这很奇怪(或者至少是出乎意料的)。刚刚尝试在已经选择的先前位置重新保存,NSSavePanel
它似乎正在工作(不做任何事情)。那可能吗?(是的,刚刚重新检查了两次:该应用程序已被沙盒化)