单击和双击 C++ 的单个日志生成

问题描述

我有一个应用程序来记录鼠标点击。每次点击我都需要一个日志。在双击期间,鼠标按钮会生成一系列消息:WM_LBUTTONDOWN、WM_LBUTTONUP、WM_LBUTTONDBCLK 和 WM_LBUTTONUP。所以每次双击我都会得到 4 个日志。由于日志是通过生成消息来处理的。

有什么办法可以限制其他日志,只获取WM_LBUTTONDBCLK的日志。

提前致谢。

解决方法

如您所知,Windows 无法从第一次按下时检测到“双击”。所以,你应该自己做。 例如,在第一次单击时启动计时器(例如,最多 500 毫秒)。如果计时器结束并且没有收到双击,则记录单击。在其他情况下,您应该记录双击。