编写子窗口过程

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

像框架窗口过程一样,默认情况下,MDI子窗口过程使用特殊功能来处理消息。子窗口过程不处理的所有消息必须传递给DefMDIChildProc函数,而不是DefWindowProc函数。另外,一些窗口管理消息必须传递给DefMDIChildProc,即使应用程序处理该消息,以使MDI正常工作。以下是应用程序必须传递给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。