VC++中的ON_COMMAND_RANGE宏

本文介绍了VC++中的ON_COMMAND_RANGE宏,用于批量处理一系列消息。通过示例,展示了如何定义和使用该宏,以实现对连续ID的按钮控件的消息响应。在resource.h中定义ID,并在.rc文件中配置按钮,使用ON_COMMAND_RANGE可以简化大量同类控件的事件处理编程工作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

 

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值