2.5 Windows程序的生命周期
下面对Windows程序的生命周期做出说明。
(1) 用户启动应用程序,调用WinMain函数。
(2) WinMain函数注册一个窗口类,它用于标志应用程序主窗口的类型(此处的窗口类与C++(www.cppentry.com)类CWnd不同,用户很少会考虑到WinMain,WinMain注册窗口类型,它意味着可根据不同的需要定制窗口类型),同时采用WinMain来设置窗口程序函数名。
(3) WinMain调用CreateWindow API函数来创建应用程序主窗口。
(4) WinMain调用ShowWindow API函数来显示窗口。
(5) WinMain调用UpdateWindow API函数使应用程序重画客户区中的内容。
(6) WinMain进入一个消息循环,并一直进行循环直到收到WM_QUIT消息,在消息循环中调用GetMessage函数来从应用程序消息队列中获取消息,调用TranslateMessage函数来把与键盘相关的消息进行转换,调用DispatchMessage函数来把消息分发给应用程序的不同窗口。
(7) 窗口收到Windows消息之后,分析它的消息类型,并执行合适的消息处理函数。如果没有该消息的处理函数,则调用DefWindowsProc函数以提供默认的处理。
(8) 当应用程序消息循环遇到一个WM_QUIT消息时,退出WinMain函数,中止应用程序运行。
上述描述适应于采用C或不使用MFC编写的程序,而在MFC程序中许多步骤则看不到了,在C语言程序中,需要编写WinMain函数以及消息处理函数,而MFC程序则只需要编写消息处理函数。
【责任编辑:
云霞 TEL:(010)68476606】