MFC消息处理机制
2026/5/6 17:59:47 网站建设 项目流程

消息处理流程

MFC消息分类

各个消息处理函数均应以afx_msg void 为函数型式。

标准Windows 消息

//the_class.H class the_class: public base_class { public: ... afx_msg void OnPaint();//消息处理函数声明 DECLARE_MESSAGE_MAP()//消息映射声明 }; //the_class.CPP //消息映射 BEGIN_MESSAGE_MAP(the_class, base_class) //消息入口 ON_WM_PAINT() END_MESSAGE_MAP() //消息处理函数定义 void the_class::OnPaint() { ... base_class::OnPaint(); }

命令消息

//资源文件,这里是afxres.h #define ID_FILE_PRINT 0xE107 //分配资源ID //the_class.H,这里是afxwin.h class the_class: public base_class { public: ... afx_msg void OnFilePrint();;//消息处理函数声明 DECLARE_MESSAGE_MAP()//消息映射声明 }; //the_class.CPP //消息映射 BEGIN_MESSAGE_MAP(the_class, base_class) ON_COMMAND(ID_FILE_PRINT, &the_class::OnFilePrint)//消息入口 END_MESSAGE_MAP() //消息处理函数定义 void the_class::OnFilePrint() { ... }

Notification 消息

//Resource.h #define IDC_BUTTON1 1001 //分配资源ID //the_class.H class the_class: public base_class { public: ... afx_msg void OnBnClickedButton1();//消息处理函数声明 DECLARE_MESSAGE_MAP()//消息映射声明 }; //the_class.CPP //消息映射 BEGIN_MESSAGE_MAP(the_class, base_class) ON_BN_CLICKED(IDC_BUTTON1, &the_class::OnBnClickedButton1) //消息入口 END_MESSAGE_MAP() //消息处理函数定义 void the_class::OnBnClickedButton1() { ... }

MessageMap

消息路由

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询