#include
LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM );
int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,PSTR szCmdLine,int nCmdShow)
{
HWND hwnd;
MSG msg;//消息
WNDCLASS wc;
//1设计一个窗口类
wc.style=0;//窗口的样式
wc.lpfnWndProc=(WNDPROC)WndProc;//告诉这个窗口的窗口过程函数名称
wc.cbClsExtra=0;//窗口类额外的数据暂时不用考虑
wc.cbWndExtra=0;//窗口额外的数据暂时不用考虑
wc.hInstance=hInstance;//当前实例的实例句柄
wc.hIcon=LoadIcon(NULL,IDI_WINLOGO);//窗口的图标的样式
wc.hCursor=LoadCursor(NULL,IDC_ARROW);//鼠标的样式
wc.hbrBackground=(HBRUSH)(COLOR_WINDOW+1);//背景颜色
wc.lpszMenuName=NULL;//是否有菜单
wc.lpszClassName=TEXT("My WndClass");//窗口类的名字
//2注册窗口类
RegisterClass(&wc);
//3创建窗口
hwnd=CreateWindow(TEXT("My WndClass"),//窗口了类名字
TEXT("标题"),//创建的窗口标题
WS_OVERLAPPEDWINDOW,//窗口的样式
CW_USEDEFAULT,//窗口的x坐标
CW_USEDEFAULT,//窗口的y坐标
CW_USEDEFAULT,//窗口的长
CW_USEDEFAULT,//窗口的宽
NULL,//父窗口
NULL,//窗口菜单句柄
hInstance,//当前实例的实例句柄
NULL//暂时不用的参数
);
//4显示和更新窗口
ShowWindow(hwnd,nCmdShow);//显示窗口
UpdateWindow(hwnd);//更新窗口
//5消息循环
while(GetMessage(&msg,NULL,0,0));
{
TranslateMessage(&msg);//翻译消息
DispatchMessage(&msg);//转发消息到窗口过程WndProc
}
return msg.wParam;
}
LRESULT CALLBACK WndProc(HWND hwnd,UINT message,WPARAM wParam,LPARAM lParam)
{
switch(message)
{
case WM_PAINT:
return 0;
case WM_DESTROY:
PostQuitMessage(0);
return 0;
default:
return DefWindowProc(hwnd,message,wParam,lParam);
}
return 0;
}