按钮实现按下抬起不同响应
来源:互联网 发布:了不起的node.js 编辑:程序博客网 时间:2024/05/17 04:08
1)添加新类CMyButton,基类为CButton:
右键单击解决方案,选择菜单添加->类->MFC类,以CButton为基类添加新类CMyButton;
实际上添加了两个文件:MyButton.cpp和MyButton.h.
2)添加消息映射:
类视图中,右键单击CMyButton类,选择属性,属性窗口中单击消息图标,添加WM_LBUTTONDOWN的消息处理函数,
实际添加的代码如下:
BEGIN_MESSAGE_MAP(CMyButton, CButton)
ON_WM_LBUTTONDOWN()
END_MESSAGE_MAP()
public:
afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
void CMyButton::OnLButtonDown(UINT nFlags, CPoint point)
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
TRACE(L" CMyButton::OnLButtonDown\n"); //非自动生成,自己添加的
CButton::OnLButtonDown(nFlags, point);
}
3)右键单击Button按钮,插入控件变量,变量类型改为CMyButton,实际添加的代码如下:
CMyButton m_MyButton;
DDX_Control(pDX, IDC_BUTTON2, m_MyButton);
添加完成,单击Button按钮时,会调用CMyButton::OnLButtonDown()函数了。
消除连击现象:
添加如下代码
m_hWnd.GetDlgItem(IDC_BUTTON_CAMERADOWN)->EnableWindow(false);//控件无效 不能响应下一次鼠标点击,可避免连击
Sleep(100);
m_hWnd.GetDlgItem(IDC_BUTTON_CAMERADOWN)->EnableWindow(true);
TRACE(L" CMyButton::OnLButtonDown\n"); //非自动生成,自己添加的
- 按钮实现按下抬起不同响应
- NGUI 按钮 按下 抬起 事件
- 给按钮设置按下抬起状态
- 实现ImageView按下变暗,抬起变亮。
- Android textColor、按钮按下抬起颜色变换
- Button按钮的按下和抬起点击事件
- Unity UGUI 检测按钮的按下与抬起
- 监听按钮的按下和抬起,,toucheBegin会和按钮的监听事件冲突
- TextView 实现按下和抬起改变颜色
- 使用StateListAnimator实现Button按下变小,抬起变大效果
- 如何实现按钮按下响应一个事件 松开另一个?
- 关于实现按下回车键响应按钮事件问题
- [MFC]MFC的BUTTON控件响应鼠标按下和抬起
- Button按下抬起状态
- VC++中独立捕获按钮按下和抬起两个动作
- 学习笔记(七):MFC中按钮的抬起和按下
- VC++中独立捕获按钮按下和抬起两个动作
- android,按钮按下抬起背景,不需要在事件做切换
- Magnus Ahltorp的Mysql Driver
- 应聘时漂亮的回答
- Orcale详细教程 2
- X680 17 定义类型和值
- jquery+css实现简单的窥镜效果
- 按钮实现按下抬起不同响应
- 从文件中读取Bitmap
- X680 18 Boolean类型标识
- 第8章 桥接模式(Bridge Pattern)
- UC/OS-II下通用驱动框架的设计
- 安装和使用ibatis
- X680 19 Integer类型标识
- Spring 框架的设计理念与设计模式分析
- asp.net链接数据库代码