【问题标题】:Mac Listen for event: Copy to PasteboardMac 监听事件:复制到粘贴板
【发布时间】:2013-05-15 20:25:30
【问题描述】:

我正在阅读 NSPasteboard,然后想找到....

  1. 我正在尝试找到正确的通知方法来侦听数据到剪贴板的复制事件。

  2. 另外,我正在尝试查找复制到剪贴板的数据的文件路径。这将是一个粘贴板对象。

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

有什么想法吗?

【问题讨论】:

标签: macos events copy nsnotificationcenter nspasteboard


【解决方案1】:
  1. 没有可用的通知。 Devara Gudda 是对的。您从粘贴板请求信息以检查更改(changeCount 应该是一个指标)。

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

现在,您必须使用一些技巧将粘贴板数据与您需要的某些环境状态联系起来。

是的,我已经设法获取粘贴板数据的源应用程序。我的应用程序运行时,我一直在跟踪当前活动的应用程序。当粘贴板更改它的内容时,我可以看到此时哪个应用程序处于活动状态。现在这不是一个理想的解决方案——有些情况是这种方法无法涵盖的。但它在 99% 的情况下仍然有效。

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

祝你好运!

【讨论】:

  • 超级有帮助。加一个这个。但是,正如 UJey 所说,我仍然需要 #2 和 #3 方面的帮助。
猜你喜欢
  • 2010-11-12
  • 1970-01-01
  • 2016-11-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-10-14
相关资源
最近更新 更多