windows宏消息总结

.思路
在switch中写宏处理,实际处理过程放外面,并且switch中的宏处理要写得像c++重载函数
1.统一宏函数HAND_MSG(
。。。。)∥这是个宏
2.给宏处理加一个函数指针,在switch外处理实际消息
HAND_MSG(。。。。fn)

3.由于要处理不同消息,宏中肯定要个message标识不同函数
HAND_MSG(message,fn。。。)∥类似这样

实际
1.把HAND_MSG(message ,fn)转化为各类宏(编写一次)
2.把转化过来再次定义成宏实现fn指针
3.由1的宏转换导致各种不同宏,而各种不同转换结果导致不同的fn函数,从而导致2可编写许多
example:(lparam,wparam不写,举例)
1.#define HAND_MSG(int message,fn)
HAND_##message(fn)

HAND_MSG(WM_SIZE,onsize)转换为
hand_wm_size(fn)

hand_msg(wm_paint.onpaint)转化为
hand_wm_paint(fn)

2.实现各类转换
#define handle_wm_size(fn) fn(。。。。。)

#define handle_wm_paint(fn) fn(。。。。。)

由于hand_wm_size(fn)替代为fn(…)
由于fn是宏,fn可以被任何东西替代,fn可以 写在switch外面

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值