【发布时间】:2013-11-04 05:44:02
【问题描述】:
ICCCM 定义了三个选择 1) 主要 2) 次要 3) 剪贴板。但是在 xlib 中,xatom.h 只定义了 XA_PRIMARY 和 XA_SECONDARY 但剪贴板没有这样的原子。所以我的疑问是剪贴板是由 xlib 实现的,还是必须由主要和辅助等单个应用程序实现?
如果它必须由单个应用程序实现,不同的应用程序将如何与剪贴板交互,就像从一个应用程序的窗口复制并粘贴到另一个应用程序的窗口......?不同的应用程序如何共享一个公共缓冲区?任何人都可以帮助在linux中实际实现剪贴板..吗?我经历了这个 link 。但是我找不到很多关于实现的信息。
【问题讨论】:
-
你为什么要问?不使用现有的工具包是一种巨大的时间浪费;您需要多年的工作才能制作自己的作品,而且不会比现有的更好。如果现有的工具包不能满足您的需求,最好扩展它(通过编写一些额外的小部件)而不是从头开始重写!
-
我不是自己做的,我只是想知道剪贴板的实现。我必须开发一个小应用程序。 @BasileStarynkevitch
-
然后,看看现有的实现。因此,如果使用 Qt,请查看 Qt 的源代码(以及示例的源代码)。大多数工具包都提供了一个 API 来处理剪贴板,例如QClipboard 这样的 API 对你来说真的很重要。
-
如果没有实现自己的工具包,您使用的是哪个工具包?这很重要,因为答案取决于实践中的工具包。有关更多信息,请参阅我的更新答案...
标签: linux clipboard x11 xlib icccm