使用wxpython编写剪贴板管理器?

使用wxpython编写剪贴板管理器?,python,wxpython,wxwidgets,clipboard,Python,Wxpython,Wxwidgets,Clipboard,当前状态:我有一个托盘图标,两个上下文菜单-一个用于右键单击的关于/选项/退出/等,另一个用于左键单击的剪贴板管理 我不确定的一件事是如何同步剪贴板内容——我掌握了如何从剪贴板读写数据,但我不知道如何检测更改(或者应该定期检查?) 您将如何做到这一点?如果我错了,任何人都请纠正我,但我认为实现的唯一方法是轮询 我还试着看了一个著名的剪贴板管理器的源代码 我从中发现了这种代码的宁静 /* Add the daemon loop */ timeout_id = g_timeout_add_f

当前状态:我有一个托盘图标,两个上下文菜单-一个用于右键单击的关于/选项/退出/等,另一个用于左键单击的剪贴板管理

我不确定的一件事是如何同步剪贴板内容——我掌握了如何从剪贴板读写数据,但我不知道如何检测更改(或者应该定期检查?)


您将如何做到这一点?

如果我错了,任何人都请纠正我,但我认为实现的唯一方法是轮询

我还试着看了一个著名的剪贴板管理器的源代码

我从中发现了这种代码的宁静

  /* Add the daemon loop */
  timeout_id = g_timeout_add_full(G_PRIORITY_LOW,
                                  DAEMON_INTERVAL,
                                  (GSourceFunc)daemon_check,
                                  NULL,
                                  (GDestroyNotify)reset_daemon);

在头文件中,DAEMON_INTERVAL被定义为500。因此,它每500毫秒检查一次。

如果我错了,请任何人纠正我,但我认为实现的唯一方法是轮询

我还试着看了一个著名的剪贴板管理器的源代码

我从中发现了这种代码的宁静

  /* Add the daemon loop */
  timeout_id = g_timeout_add_full(G_PRIORITY_LOW,
                                  DAEMON_INTERVAL,
                                  (GSourceFunc)daemon_check,
                                  NULL,
                                  (GDestroyNotify)reset_daemon);

在头文件中,DAEMON_INTERVAL被定义为500。因此,它每500毫秒检查一次。

我尝试了更多的搜索,但除了定期轮询它之外,没有找到任何其他选项,所以我想你是对的。谢谢。我尝试了更多的搜索,但除了定期轮询外,没有找到其他选择,所以我想你是对的。谢谢