【问题标题】:Does a window receive triple click events? How can I handle higher-order clicks?窗口是否接收三次点击事件?如何处理高阶点击?
【发布时间】:2013-03-20 01:17:09
【问题描述】:

窗口是否会像双击一样接收有关三次单击的消息?我找不到与WM_LBUTTONDBLCLK message 类似的WM_LBUTTONTRIPLECLICK 消息。

我想实现类似于 Microsoft Word 的功能,其中三次单击可选择整个段落。如何检测我的窗口上的三次点击?

【问题讨论】:

  • 不错的问题,只是措辞非常糟糕,几乎到了无法阅读的地步。也许英语不是您的第一语言,但在撰写问题时多花点时间真的可以得到回报。我编辑了这个并给了你一个奖励+1。希望在首次发布问题时所投的反对票可以被撤销。
  • 你说得对,我不会说英语,还是谢谢!!!

标签: c++ windows winapi


【解决方案1】:

这在 MSDN 上有记录: http://msdn.microsoft.com/en-us/magazine/cc163628.aspx

这个想法是等待双击,然后在之后的某个时间段内检查是否有点击。

不仅仅是 Internet Explorer,它也是 Microsoft Word 和 Outlook®,尽管 Outlook 在三次单击方面略有不同 选择行而不是段落。你是对的,没有 WM_LBUTTONTRIPLECLICK,但自己实现一个并不难。 毕竟,什么是三次单击而不是快速连续的三次单击? 或者快速连续双击和单击。你所拥有的一切 要知道点击必须多快才能算作 三击?要找出答案,您可以调用适当命名的 ::GetDoubleClickTime,返回双击时间 毫秒。因此,如果您双击然后单击 在这么多毫秒内,它算作三次点击。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2017-07-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-12-17
  • 1970-01-01
  • 2023-03-24
相关资源
最近更新 更多