【MFC消息映射问题请教】
时间:2011-12-18
来源:互联网
编程环境:vs2008 MFC对话框类型程序
【问题描述】 这个程序是经过多次修改(我的意思是这个程序不是新建的程序)我像往常一样在Dialog主对话框上添加Slider Control控件,添加完成后双击该控件,希望它生成触发函数(就是通过鼠标滑动该控件上的滑块,希望额能因此调用其他函数,当然这个希望也是非常非常非常之正常),可是郁闷的是运行程序后。我用鼠标滑动此控件上的滑块,确没能得到我希望的效果,也就是说,这个控件对应的消息函数并没有真正的运行。
首先声明:我不是新手,且以前都经常用这些控件,对这些控件的一般性用法没有问题。
并且通过仔细查找,此消息函数的声明、消息函数与制定控件的关联、消息函数的定义在格式上和语法上没有问题。
【消息函数的声明】
afx_msg void OnNMCustomdrawSlider1(NMHDR *pNMHDR, LRESULT *pResult);
【消息函数的关联】
ON_NOTIFY(NM_CUSTOMDRAW, IDC_SLIDER1, &CScreenVideoDlg::OnNMCustomdrawSlider1)
【消息函数的定义】
void CScreenVideoDlg::OnNMCustomdrawSlider1(NMHDR *pNMHDR, LRESULT *pResult)
{
LPNMCUSTOMDRAW pNMCD = reinterpret_cast<LPNMCUSTOMDRAW>(pNMHDR);
// 以下自定义代码仅为调试
int i = 0;
i++;
*pResult = 0;
}
最后经过和其他程序的对比,终于发现问题的所在
原来问题出在这个消息函数的关联语句中的ON_NOTIFY,这无疑是个宏,但是非常不幸,这个宏在这个消息函数的关联语句所在的代码中,以灰色显示,而其他程序(以前正常使用Slider Control的程序)的同样控件的消息函数的关联处,该宏是粉色显示(因为,我想大多数人都在使用Vissaix x控件?这个大家能理解吧?)
所以,我觉得这就是问题的所在,因为是灰色的,灰色差不多就是不可用的,也就是说程序跑起来,我无乱怎么操作,程序都不会发送消息给这个消息函数的定义体所在代码,也就没有达到我的期望,
想请教大家的是,我怎么才能让这个宏出在粉色显示,而不是我现在的灰色?
好像说的有些罗嗦,大家受累了
【问题描述】 这个程序是经过多次修改(我的意思是这个程序不是新建的程序)我像往常一样在Dialog主对话框上添加Slider Control控件,添加完成后双击该控件,希望它生成触发函数(就是通过鼠标滑动该控件上的滑块,希望额能因此调用其他函数,当然这个希望也是非常非常非常之正常),可是郁闷的是运行程序后。我用鼠标滑动此控件上的滑块,确没能得到我希望的效果,也就是说,这个控件对应的消息函数并没有真正的运行。
首先声明:我不是新手,且以前都经常用这些控件,对这些控件的一般性用法没有问题。
并且通过仔细查找,此消息函数的声明、消息函数与制定控件的关联、消息函数的定义在格式上和语法上没有问题。
【消息函数的声明】
afx_msg void OnNMCustomdrawSlider1(NMHDR *pNMHDR, LRESULT *pResult);
【消息函数的关联】
ON_NOTIFY(NM_CUSTOMDRAW, IDC_SLIDER1, &CScreenVideoDlg::OnNMCustomdrawSlider1)
【消息函数的定义】
void CScreenVideoDlg::OnNMCustomdrawSlider1(NMHDR *pNMHDR, LRESULT *pResult)
{
LPNMCUSTOMDRAW pNMCD = reinterpret_cast<LPNMCUSTOMDRAW>(pNMHDR);
// 以下自定义代码仅为调试
int i = 0;
i++;
*pResult = 0;
}
最后经过和其他程序的对比,终于发现问题的所在
原来问题出在这个消息函数的关联语句中的ON_NOTIFY,这无疑是个宏,但是非常不幸,这个宏在这个消息函数的关联语句所在的代码中,以灰色显示,而其他程序(以前正常使用Slider Control的程序)的同样控件的消息函数的关联处,该宏是粉色显示(因为,我想大多数人都在使用Vissaix x控件?这个大家能理解吧?)
所以,我觉得这就是问题的所在,因为是灰色的,灰色差不多就是不可用的,也就是说程序跑起来,我无乱怎么操作,程序都不会发送消息给这个消息函数的定义体所在代码,也就没有达到我的期望,
想请教大家的是,我怎么才能让这个宏出在粉色显示,而不是我现在的灰色?
好像说的有些罗嗦,大家受累了
作者: likeyuanyuan 发布时间: 2011-12-18
坐等高手指点,
作者: likeyuanyuan 发布时间: 2011-12-18
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28