求助,mfc编程实现获取按钮一直按下的消息。

我要奋斗---为了他们 2013-10-27 08:59:56
如何得到按钮“一直按下”这个消息?
我的程序是基于对话框的,
程序中要求当一个按钮一直按下时,要把一个参数一直加1,
按钮抬起时就停止相加。
请问如何得到“按钮一直按下”和“按钮抬起”这两个状态,
谢谢!
...全文
267 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
starytx 2013-10-28
  • 打赏
  • 举报
回复
lz要的好像是那个有上下箭头按钮的控件,可以增减编辑框中的数值,这个控件叫 spin control
七月的狮子 2013-10-28
  • 打赏
  • 举报
回复
引用
在OnLButtonDown函数中设置一个定时器SetTimer(m_hWnd, 1, 100, NULL),在OnLButtonUp这个函数中移除定时器KillTimer(m_hWnd, 1).
一直加一和时间有关吗?多少秒加一?
ww419793476 2013-10-28
  • 打赏
  • 举报
回复
在OnLButtonDown函数中设置一个定时器SetTimer(m_hWnd, 1, 100, NULL),在OnLButtonUp这个函数中移除定时器KillTimer(m_hWnd, 1).
ww419793476 2013-10-28
  • 打赏
  • 举报
回复
可以自己定义一个按钮类,从CButton继承,然后在按钮类中重写OnLButtonDown和OnLButtonUp这两个函数,就OK了.
  • 打赏
  • 举报
回复
引用 2 楼 wangdahu888 的回复:
这不简单,如果检测到WM_LBUTTONDOWN时,一直没有检测到WM_LBUTTONUP,那就是还没松手呗
您好!谢谢您的回答。你所说的意思是在类向导中添加这两个消息是吗?能给个简单的例程吗?
  • 打赏
  • 举报
回复
引用 3 楼 jl7519970 的回复:
[quote=引用 1 楼 max_min_ 的回复:] 如果没记错的话,按键本来就有按下和弹起这两个状态的吧!
感谢您的回答! 基于您的回答,我找了找,的确是找不到按下和弹起状态在哪。对于按钮事件只有单击和双击。到时我能找到按键和弹起的消息,可是不知道把该消息放哪里。有说放到Pretranlatemessage中的,我找不到这个函数。我编程有点菜,请见谅![/quote] 我重载了Pretranlatemessage函数,但总是出现一大堆错误,将该重载函数删除之后还是那样。
  • 打赏
  • 举报
回复
引用 1 楼 max_min_ 的回复:
如果没记错的话,按键本来就有按下和弹起这两个状态的吧!
感谢您的回答! 基于您的回答,我找了找,的确是找不到按下和弹起状态在哪。对于按钮事件只有单击和双击。到时我能找到按键和弹起的消息,可是不知道把该消息放哪里。有说放到Pretranlatemessage中的,我找不到这个函数。我编程有点菜,请见谅!
  • 打赏
  • 举报
回复
这不简单,如果检测到WM_LBUTTONDOWN时,一直没有检测到WM_LBUTTONUP,那就是还没松手呗
max_min_ 2013-10-27
  • 打赏
  • 举报
回复
如果没记错的话,按键本来就有按下和弹起这两个状态的吧!

33,311

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧