热门标签 | HotTags
当前位置:  开发笔记 > 前端 > 正文

如何区分WM_LBUTTONDBLCLK和WM_LBUTTONUP???(当为WM_LBUTTONDBLCLK时,不处理WM_LBUTTONUP)

windows产生WM_LBUTTONDBLCLK消息时,实际上还伴随了两个WM_LBUTTONUP消息,因为我的程序中对这两个消息有不同的处理,所以希望当是WM_LBUTTONDBLCLK时,
windows产生WM_LBUTTONDBLCLK消息时,实际上还伴随了两个WM_LBUTTONUP消息,
因为我的程序中对这两个消息有不同的处理,所以希望当是WM_LBUTTONDBLCLK时,
伴随产生的WM_LBUTTONUP忽略掉,请问怎么办阿?????

6 个解决方案

#1


添加一个状态,正常状态为ST_NORMAL,如WM_LBUTTONDBLCLK则状态为ST_DBCLICK.
在WM_LBUTTONUP判断状态是否为ST_DBCLICK,是则将状态改为ST_NORMAL不做其他处理。

#2


仔细看一下双击时产生的消息顺序,就知道楼上的方法不行:
双击时的消息顺序如下:
WM_LBUTTONDOWN 
WM_LBUTTONUP 
WM_LBUTTONDBLCLK 
WM_LBUTTONUP 

在WM_LBUTTONDBLCLK消息产生之前,已经有一个WM_LBUTTONUP 消息产生了,此时状态
还是st_normal.还是会处理WM_LBUTTONUP消息。:-(

#3


up

#4


gz

#5


gz

#6


关注

推荐阅读
author-avatar
技术小菜鸟
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有