问题标签 [nspasteboard]

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.

0 投票
4 回答
1708 浏览

objective-c - 拖动文件遇到沙盒(__CFPasteboardIssueSandboxExtensionForPath)

我处理了从浏览器视图到自定义视图的拖动操作。它在雪豹中运行良好,但在带有沙箱的山狮中运行良好。

我的问题是:

1.如何解决此错误__CFPasteboardIssueSandboxExtensionForPath;我参考了文档,但没有发现任何相关信息。我确保我有权访问该文件!谷歌说,可能是“startAccessingSecurityScopedResource”会帮助我,然后我尝试并失败了

2.为什么 pasteboardItems2 有价值?我只写到粘贴板的 url 而不是字符串。这让我感到恶心,我可以从 NSString 类型和 NSUrl 类型中获取 url!(我尝试从 iFinder 拖动一个文件,该 url 将只存在于 pasteboardItems 而不是 pasteboardItems2)。有人知道为什么吗?我认为当有人帮我解决这个问题时,第一个问题会自动解决。

0 投票
1 回答
450 浏览

cocoa - NSBrowser 填充 NSPasteboard 但不会丢弃

我有一个 NSBroswer,其中包含一系列查找文本 blob 的条目。如果 blob 存在,则 - (BOOL)browser:canDragRowsWithIndexes:inColumn:withEvent:返回 YES。

这调用 - (BOOL)browser:writeRowsWithIndexes:inColumn:toPasteboard:

在这里,我执行以下操作:

现在出来的粘贴板的数据分析(带有retBOOL:是)是:

所以我的问题是,当我将它拖到 SimpleText 或 BBEdit 时,什么都没有。我没有看到目标文档的亮点。(注:我也有拖图例程,看到拖图了)

任何想法为什么我似乎正在填充粘贴板但它拒绝放入其他应用程序?

0 投票
0 回答
253 浏览

cocoa - 从 NSPasteboard 中删除项目

目标:Mac OS X 10.7+,Xcode 4.3.x

核心需求:拖动/粘贴时,允许我处理一种类型的项目,将其余的传递给超类。

我有一个NSTextView带有 performDragOperation 方法的子类。我想做的是拦截所有文件删除以做额外的事情,然后允许任何其他项目通过NSTextView调用传递给超类()[super performDragOperation]

我看不到从粘贴板上删除一个项目的方法。看来我只有两个选择:

  1. 自己处理将所有粘贴板项目插入到我的 textView 中。
  2. 缓存项目,清除粘贴板,然后在将它们传递到链上之前将它们重新插入(我尝试过这个选项但没有成功,但我可能知道它为什么会中断)。

我错过了#3 选项吗?如果不是,您会建议#1 或#2 中的哪一个?

0 投票
0 回答
79 浏览

objective-c - 在 Mac 上获取最后一个粘贴板项目条目的来源和时间

有什么办法可以让我最后一次进入 NSPasteboard 以及使用 Objective-C 代码或某些终端命令在 Mac 上执行复制/剪切操作的应用程序

0 投票
1 回答
421 浏览

nspasteboard - nspasteboard readObjectsForClasses 爆炸了

我正在尝试在 tableView 中实现一个简单的拖放操作。但是,当我尝试使用 readObjectsForClasses 从粘贴板中检索数据时,出现运行时异常

“[__NSCFConstantString initWithBytes:length:encoding:]: 无法识别的选择器发送到实例”

这是我出现问题的 acceptDrop 方法。有人可以帮助指出我做错了什么。

0 投票
2 回答
650 浏览

objective-c - NSPasteboard generalPasteboard 返回 nil

我正在尝试将一个作为插件加载到另一个程序中的一个复制NSString到粘贴板。NSBundle

出于某种原因,[NSPasteboard generalPasteboard]返回 nil。

我的代码来自 Apple 的NSPasteboard 文档NSPasteboard 编程指南

有什么我可能无意中造成的吗?

0 投票
2 回答
226 浏览

objective-c - 接受从 iPhoto 或 Aperture 拖放

我创建了一个应用程序,其中包含一个 ImageView 子类,它直接从 Finder 接受拖放文件/文件夹。

问题是我现在正试图让它接受来自 iPhoto 或 Aperture 的照片。

PboardType我应该注册哪个?

我目前正在做的是:

有任何想法吗?

0 投票
1 回答
204 浏览

cocoa - 使用 NSPasteboard 数据启动应用程序

我想使用 NSPasteboard 数据启动应用程序(或使用 AppleEvents 发送给它们),就像在 Finder 中将文件、文本、图像拖放到应用程序(或 Dock 中)并启动或调用应用程序中的数据。

像 LSOpenFromURLSpec 这样的启动服务功能仅适用于文件,我看到 AppleEvents 的任意参数有一个选项,但我不知道如何使它工作。

另一个问题是沙盒,但我不确定它是否可能。

谢谢你。

0 投票
1 回答
494 浏览

macos - NSPasteboard readObjectsForClasses:options: 返回值两次

切入正题,然后:

第一个片段(AppDelegate):

第二个片段(AppDelegate):

第三个片段(ClipboardUtilities 类):

我注意到一些奇怪的行为,我将尝试用一个例子来解释:

输入

  1. Cmd+C 字符串“A”
  2. Cmd+C 字符串“B”
  3. Cmd+C 字符串“C”
  4. Cmd+C 字符串“D”

从确定AndAddToHistory 的输出

  1. 一个
  2. 一个
  3. C

所以我注意到它出于某种原因保留了第一个项目......然后每次都返回我第二个最近的项目。我尝试在 getClipboardDataNatively 方法中输出 objectsToPaste 数组,但仍然如此。有人可以让我知道我将如何解决这个问题,或者他们是如何解决的吗?

PS 我的 ClipboardUtilities 类没有实现任何委托,或者继承自 NSObject 以外的任何东西。

0 投票
1 回答
566 浏览

objective-c - 当我使用 NSPasteboard 时,我遇到了架构 x86_64 的未定义符号

可能重复:
在 XCode、Cocoa 应用程序中找不到符号

下面是错误信息

下面是代码。我应该包含更多标题吗?