gpt4 book ai didi

python - 用matplotlib区分单击和双击

转载 作者:太空宇宙 更新时间:2023-11-04 03:37:15 25 4
gpt4 key购买 nike

我正在 try catch 对我的图形的单击和双击。

如另一个 answer 所述, event 包含 event.dblclick 是 False 或 True,至少在 1.4.2 版本中,所以双击可以得到。

唯一的问题是不容易区分单击和双击,因为双击事件会被触发两次。第一次使用 event.dblclick=False,第二次使用 event.dblclick=True

有什么解决办法吗?我看到讨论了关于 qt 的相同问题 here .

最佳答案

您需要一个软件去抖器。

基本上,您会在第一次点击时启动计时器。如果计时器用完,则继续处理单击事件。如果在计时器内检测到第二次单击,则处理双击事件。

如果需要,这实际上可以扩展到 n 次点击。我发现了三次点击事件的一些用途。

Here是一个在 wxPython 中实现的。应该相对容易移植到 matplotlib。


此外,如果您使用的是 Windows,我建议您将用户的双击速度用于您的计时器(控制面板:鼠标)。您可以通过以下方式访问它:

get_double_click_time():
""" Gets the Windows double click time in ms """
from ctypes import windll
return int(windll.user32.GetDoubleClickTime())

我还没有想出如何从 Mac 或 Linux 获取点击时间(但我也不需要)。

关于python - 用matplotlib区分单击和双击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28416662/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com