DefMDIChildProc

【勇芳软件工作室】汉化HomePreviousNext

DefMDIChildProc函数为多文档界面(MDI)子窗口的窗口过程不处理的任何窗口消息提供默认处理。窗口过程未处理的窗口消息必须传递给DefMDIChildProc函数,而不是DefWindowProc函数。

LRESULT DefMDIChildProc(

HWND 【的hWnd】,//处理MDI子窗口
UINT 【uMsg】,// 信息
WPARAM 【wParam中】,//第一个消息参数
LPARAM 【lParam的】//第二个消息参数
); 

参数

【的hWnd】

标识MDI子窗口。

【uMsg】

指定要处理的消息。

【wParam中】

指定附加的消息特定信息。

【lParam的】

指定附加的消息特定信息。

返回值

返回值指定消息处理的结果,并取决于消息。

备注

DefMDIChildProc函数假定由【的hWnd】参数标识的MDI子窗口的父窗口是使用MDICLIENT类创建的。

当应用程序的窗口过程不处理消息时,通常会将消息传递给DefWindowProc函数来处理消息。MDI应用程序使用DefFrameProcDefMDIChildProc函数而不是DefWindowProc来提供默认消息处理。通常,应用程序将传递给DefWindowProc(例如非客户消息和WM_SETTEXT消息)的所有消息都将传递给DefMDIChildProc.此外,DefMDIChildProc还处理以下消息:

信息响应
WM_CHILDACTIVATE当MDI子窗口的大小,移动或显示时,执行激活处理。必须传递此消息。
WM_GETMINMAXINFO根据MDI客户机窗口的当前大小计算最大化MDI子窗口的大小。
WM_MENUCHAR将消息传递到MDI框架窗口。
WM_MOVE如果MDI客户端滚动条存在,请重新计算。
WM_SETFOCUS如果不是活动的MDI子窗口,则激活子窗口。
WM_SIZE执行更改窗口大小所需的操作,特别是为了最大化或还原MDI子窗口。没有将此消息传递给DefMDIChildProc函数会产生非常不合需要的结果。
WM_SYSCOMMAND手柄窗口菜单命令:SC_NEXTWINDOW,SC_PREVWINDOW,SC_MOVE,SC_SIZE和SC_MAXIMIZE。

也可以看看

DefFrameProc, DefWindowProc, WM_CHILDACTIVATE, WM_GETMINMAXINFO, WM_MENUCHAR, WM_MOVE, WM_SETFOCUS, WM_SETTEXT, WM_SIZE, WM_SYSCOMMAND