Presentation is loading. Please wait.

Presentation is loading. Please wait.

_01自己实现简单的消息处理框架模型 本节课讲师——void* 视频提供:昆山爱达人信息技术有限公司

Similar presentations


Presentation on theme: "_01自己实现简单的消息处理框架模型 本节课讲师——void* 视频提供:昆山爱达人信息技术有限公司"— Presentation transcript:

1 _01自己实现简单的消息处理框架模型 本节课讲师——void* 视频提供:昆山爱达人信息技术有限公司
官网地址: 联系QQ: QQ交流群 : 联系电话:

2 1、窗口过程的一般框架 WndProc(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam) {
昆山爱达人信息技术有限公司 QQ: 1、窗口过程的一般框架 WndProc(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam) { ... switch(Msg) case WM_CREATE: break; } case WM_CLOSE:

3 2、痛点是什么? 当想要处理的消息越来越多时,这个switch-case结构也会越来 越复杂,维护起来非常麻烦 昆山爱达人信息技术有限公司
QQ: 2、痛点是什么? 当想要处理的消息越来越多时,这个switch-case结构也会越来 越复杂,维护起来非常麻烦

4 3、愿景 1、窗口过程不会随着处理消息的增加而增加,相对固定不变 2、要有一定的灵活性,能够自由的添加消息与其处理逻辑
昆山爱达人信息技术有限公司 QQ: 3、愿景 1、窗口过程不会随着处理消息的增加而增加,相对固定不变 2、要有一定的灵活性,能够自由的添加消息与其处理逻辑

5 4、简单的解决方案 1、typedef LRESULT (*PWNDMSGPROC) \
昆山爱达人信息技术有限公司 QQ: 4、简单的解决方案 1、typedef LRESULT (*PWNDMSGPROC) \ (HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam) 2、struct MSGPROC { DWORD Msg; PWNDMSGPROC OnProc; } 3、 MSGPROC gMsgProc[]={xx,xx,xx,xx,...};

6 5、简化之后的窗口过程 WndProc(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam) {
昆山爱达人信息技术有限公司 QQ: 5、简化之后的窗口过程 WndProc(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam) { for(int i=0;i<sizeof(gMsgProc)/sizeof(MSGPROC);i++) if(gMsgProc[i].Msg==Msg) return gMsgProc[i].OnProc(hWnd,Msg,wParam,lParam); } return DefWindowProc(hWnd,Msg,wParam,lParam);

7 昆山爱达人信息技术有限公司 QQ: 6、课后作业 线上班学员可见


Download ppt "_01自己实现简单的消息处理框架模型 本节课讲师——void* 视频提供:昆山爱达人信息技术有限公司"

Similar presentations


Ads by Google