VC++中的ON_COMMAND_RANGE宏

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

 

以后如果再有这样累赘的控件使用,直接在这两个文件中写代码就可以,省得一个一个拖动控件(按钮等)。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章