怎样为一个动态生成的按钮建立消息映射BN_CLICKED 我用create语句在对话框中创建了一个BUTTON,想为该BUTTON创建消息响应事件,该怎么做啊? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 无论是不是动态生成,消息响应只认ID号。所以,你只要手工添加这个响应事件就可以了。添加的方法你可以参照在对话框上放置一个按钮,然后用wizard生成BN_CLICKED事件,你照着抄一下自动生成的事件就可以了,只需要将ID号改为你的ID号 你要响应事件都能动态添加吧?我没有尝试过,如果要做,我不会在MFC里处理,直接处理消息循环会更轻松些,得到button的句柄,然后对它发送消息,当然你需要事先在消息循环里作好实现。 同意一楼,将普通的按钮消息映射copy后改成你的ID和函数就可以了 agree to happyparrot你还可以重载 CButton,在响应函数中发自定义消息给应用程序::SendMessage(pParent->m_hWnd, UM_BTNCLICKED, nButtonID, 0);然后所有按钮都在一个函数LRESULT OnBtnClicked(WPARAM wParam, LPARAM lParam);中根据 wParam 来处理就好 我做过这个首先定义一个CButton m_button;创建按钮m_botton.Create(_T("登陆"), WS_CHILD|WS_VISIBLE|BS_DEFPUSHBUTTON, CRect( 20, 20, 40, 30), this, ID_LOGIN);//最后一个参数就是ID,需要自己定义,this为按钮控件的父窗口然后在.h文件里面添加消息处理函数afx_msg void OnLogin();最后在.cpp文件里面添加消息映射ON_BN_CLICKED(ID_LOGIN, CMainFrame::OnLogin)在OnLogin()里面写自己的响应代码。 如果获取带CheckBox的TreeView的? OPENCV 拉普拉斯变换的一个问题 请问:有没有谁能把7zip中的命令行程序7za.exe编程dll? 完整上传代码 如何写进度条???急急 ListView控件:如何清空listview中的内容? 提一个关于Modal的小问题 如何捕获用户名和密码错误 求助!软件源代码中有乱码怎么办???? Listctrl与Combobox控件结合问题 请问:如何设置对话框的位置,详情请进... [请问]如何根据图片来自定义窗口形状? 怎样响应按钮的消息??
你还可以重载 CButton,在响应函数中发自定义消息给应用程序
::SendMessage(pParent->m_hWnd, UM_BTNCLICKED, nButtonID, 0);
然后所有按钮都在一个函数
LRESULT OnBtnClicked(WPARAM wParam, LPARAM lParam);
中根据 wParam 来处理就好
首先定义一个CButton m_button;
创建按钮m_botton.Create(_T("登陆"), WS_CHILD|WS_VISIBLE|BS_DEFPUSHBUTTON, CRect( 20, 20, 40, 30), this, ID_LOGIN);//最后一个参数就是ID,需要自己定义,this为按钮控件的父窗口
然后在.h文件里面添加消息处理函数afx_msg void OnLogin();
最后在.cpp文件里面添加消息映射ON_BN_CLICKED(ID_LOGIN, CMainFrame::OnLogin)
在OnLogin()里面写自己的响应代码。