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

 

以後如果再有這樣累贅的控件使用,直接在這兩個文件中寫代碼就可以,省得一個一個拖動控件(按鈕等)。

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