本文主要是介绍on command range,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
ON_COMMAND_RANGE
ON_COMMAND_RANGE( id1, id2, memberFxn )
参数:
id1 | 一个连续范围的命令ID的起始值。 |
id2 | 一个连续范围的命令ID的结束值。 |
memberFxn | 该命令被映射到的消息处理函数的名字。 |
说明:
使用这个宏把一个连续范围的命令ID映射到单个命令处理函数。ID的范围从id1开始,到id2结束。
用ON_COMMAND_RANGE把一个范围的命令ID映射到一个成员函数。用ON_COMMAND把单个命令ID映射到成员函数。每个给定的命令ID只能有一个消息映射入口。这就是说,不能把命令映射到多于一个的处理函数。关于映射消息范围的更多信息参见“Visual C++程序员指南”中的“消息映射范围的处理函数”。
ClassWizard不支持消息映射范围,所以你必须自己写入这个宏。确保你把它写在了消息映射的//{{AFX_MSG_MAP分界符外面。
注:memberFxn 这个afx_msg函数带一个UINT uID参数,当然你也可以在后面追加些你其他想要的参数, 这个uID是在 id1,id2之间的,但是MFC提供的这个 id1,id2是有个范围的,最大为65535个,所以用户在创建动态菜单,BUTTON时,在资源文件中定义这些宏时请最好不要超过这些范围,如果硬是要超过65535,那麽在memberFxn(UINT uID)函数判断的时候 需要取余 uID%65535 处理。
资源发生了修改需要重新buildAll一下
这篇关于on command range的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!