Window消息机制_2

本文介绍MFC中对话框的初始化显示方法及自定义消息映射处理流程。通过OnInitDialog函数设置对话框初始化,并展示如何定义和映射自定义消息到对话框类中进行处理。此外,还探讨了MFC中默认的消息处理机制以及WM_COMMAND消息的特殊处理方式。

对话框程序的初始化显示:可以在OnInitDialog中增加相应的初始处理方法。

自定义消息映射处理实例:

定义一个消息:#define WM_DOEXTWORK (WM_USER+500)

在对应的对话框类中通过ON_MESSAGE(WM_DOEXTWORK,OnDoExtWork)实现消息映射,在对话框类中

BEGIN_MESSAGE_MAP(Cdialog1Dlg, CDialog)
ON_WM_PAINT()
ON_WM_QUERYDRAGICON()
//添加消息影射
ON_MESSAGE(WM_DOTHEWORK,OnDoTheWork)
END_MESSAGE_MAP()

LRESULT CWorkDialog::OnDoExtWork(WPARAM,LPARAM){......}

MFC中的消息缺省处理

针对应用程序未处理的消息,MFC使用CWnd::Default处理

针对WM_COMMAND消息处理做了进一步扩展:从CCmdTarget派生的类都可以相应该消息,如菜单、工具栏

可以在多个类中相应WM_COMMAND消息,但是一条消息却只能在一个地方被响应。存在相应的顺序问题,即消息路由。MFC利用CCmdTarget::OnCmdMsg来处理WM_COMMAND消息

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值