1

“NSPasteboard 对象在粘贴板服务器之间传输数据。服务器由所有正在运行的应用程序共享。它包含用户剪切或复制的数据,以及一个应用程序想要传输到另一个应用程序的其他数据。NSPasteboard 对象是一个应用程序到服务器和所有粘贴板操作的唯一接口。

NSPasteboard 对象还用于在每个应用程序的服务菜单中列出的应用程序和服务提供者之间传输数据。拖动粘贴板 (NSDragPboard) 用于传输用户拖动的数据。”

我在苹果的 NSPasteboard 文档中找到了这个。到目前为止,我只知道如何使用粘贴板进行简单的复制粘贴。我感兴趣的是如何使用上下文菜单而不是拖放来通过粘贴板服务器在应用程序之间传输用于非复制粘贴目的的数据。例如,如果用户右键单击一个单词并单击上下文菜单中的“在字典中查找”,则该单词随后(可能)通过粘贴板发送到 Dictionary 应用程序。

有人可以演示一个概念验证应用程序,展示如何访问粘贴板服务器中存储用户使用“在字典中查找”的单词的数据吗?

4

1 回答 1

0

我们不需要找到“在字典中查找”粘贴板。(如果有的话)。但是,如果您想通过粘贴板在您的应用程序之间传输数据,那么有一个 NSPasteboard 类方法可以用于此用途。

+ (NSPasteboard *)pasteboardWithName:(NSString *)name

只需为两个应用程序使用相同的名称,您就可以在它们之间传输数据。完成后请确保调用- releaseGlobally此粘贴板。

于 2011-11-13T13:12:23.937 回答