Windows窗口创建的具体步骤
/*
实现窗口创建的六步骤:
第一步:创建入口函数WinMain
第二步:注册窗口类
第三部:实现回调函数的功能
第四步:显示窗口
第五步:更新窗口
第六步:消息循环
*/
#include "stdafx.h"
//回调函数
LRESULT CALLBACK WinProc(HWND hWnd,UINT uMsg,WPARAM wParam,LPARAM lParam )
{
switch(uMsg)
{
case WM_CREATE:
{
MessageBox(NULL,"即将创建一个窗口!","Infor",MB_OK);
}
break;
case WM_DESTROY:
{
PostQuitMessage(0);
}
break;
}
return DefWindowProc(hWnd,uMsg,wParam,lParam);
}
//创建入口函数
int APIENTRY WinMain(
HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int ShowCmd
)
{
HWND hWnd=0;
MSG nMsg={0};
//注册窗口类
WNDCLASS cs={0};
cs.cbClsExtra=0;
cs.cbWndExtra=0;
cs.hbrBackground=(HBRUSH)(COLOR_WINDOW+2);
cs.hCursor=NULL;
cs.hIcon=NULL;
cs.hInstance=hInstance;
cs.lpfnWndProc=(WNDPROC)WinProc;
cs.lpszClassName="Main";
cs.lpszMenuName=NULL;
cs.style=CS_VREDRAW|CS_HREDRAW;
RegisterClass(&cs);//实现注册窗口
//创建窗口
hWnd=CreateWindow("Main","Windows",WS_OVERLAPPEDWINDOW,200,200,500,500,NULL,NULL,hInstance,NULL);
//显示窗口
ShowWindow(hWnd,SW_SHOW);
//更新窗口
UpdateWindow(hWnd);
//消息循环
while(GetMessage(&nMsg,0,NULL,NULL))
{
TranslateMessage(&nMsg);
DispatchMessage(&nMsg);
}
return 0;
}