VC++中的ON_COMMAND_RANGE宏和ON_COMMAND等宏一样,是用来声明消息处理函数的,与
ON_COMMAND不同的是,此宏可用来定义一组消息的处理函数。
VC++中的ON_COMMAND_RANGE宏
两个宏的用法是:
ON_COMMAND(id,memberFxn)
ON_COMMAND_RANGE(id1,id2,memberFxn)
resource.h
#define IDC_BUTTON11 1011
#define IDC_BUTTON12 1012
#define IDC_BUTTON13 1013
#define IDC_BUTTON14 1014
#define IDC_BUTTON15 1015
#define IDC_BUTTON16 1016
#define IDC_BUTTON17 1017
#define IDC_BUTTON18 1018
后面的数字要连续,才能正确使用ON_COMMAND_RANGE宏,否则会出现无法响应的问题。
ON_COMMAND_RANGE(IDC_BUTTON11,IDC_BUTTON17,OnOperationKey)
*.rc文本中,也要有相关的定义
PUSHBUTTON "+",IDC_BUTTON11,201,21,50,14
PUSHBUTTON "-",IDC_BUTTON12,201,39,50,14
PUSHBUTTON "*",IDC_BUTTON13,201,57,50,14
PUSHBUTTON "/",IDC_BUTTON14,201,77,50,14
PUSHBUTTON "CE",IDC_BUTTON15,78,77,50,14
PUSHBUTTON "Backspace",IDC_BUTTON16,140,77,50,14
PUSHBUTTON "=",IDC_BUTTON17,201,104,50,14
以后如果再有这样累赘的控件使用,直接在这两个文件中写代码就可以,省得一个一个拖动控件(按钮等)。