的Mac侦听事件:复制到粘贴板

问题描述:

我读NSPasteboard,然后想找到....的Mac侦听事件:复制到粘贴板

  1. 我想找到一个监听数据的副本事件的正确方法的通知剪贴板。

  2. 另外我想找到复制到剪贴板的数据的文件路径。这将是一个纸板对象。

  3. 如果我从浏览器中的页面复制文本,我试图找出如何获取文本从中复制的页面的URL地址。

任何想法?

+3

点#1在这里讨论http://stackoverflow.com/questions/3610600/get-notified-when-something-is-added-to-nspasteboard – Raviprakash

  1. 没有通知。 Devara Gudda是正确的。您可以通过粘贴板请求信息来检查更改(changeCount应该是一个指示器)。

您应该记住系统粘贴板是一个共享容器,它只存储它所包含数据的相关信息。所有应用程序都可以随时访问它以获取数据。就是这样。没有其他信息。

现在,您需要制作一些技巧来将粘贴板数据与您需要的某种环境状态进行连接。

是的,我设法得到了粘贴板数据的源代码应用程序。我正在运行应用程序时跟踪当前活动的应用程序。当粘贴板更改它的内容时,我可以看到此时应用程序处于活动状态。现在这不是一个理想的解决方案 - 有些情况不能被这种方法所覆盖。但99%的情况仍然有效。

我不知道如何获得问题#2和#3所需的信息。但我希望你能应用这些知识,并发明一些棘手的方法:)

祝你好运!

+0

超级有用。再加一个这个。然而,正如UJey所说,我仍然需要#2&#3的帮助。 – LJWilliamsIV