使用Windows API创建一个Win32应用程序窗口
新建一一个项目名为MakeWin的Win32应用程序空项目,然后为其添加一个名为MakeWin的C++源文件
#include<windows.h>
char Name[]="MakeWin";
LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM);
int WINAPI WinMain (HINSTANCE hInst,HINSTANCE hPrevInstance,LPSTR lpszCmdParm,int nCmdShow)
{
//定义
HWND hwnd;
MSG Msg;
WNDCLASS WndClass;//定义
//注册窗口
memset(&WndClass,0,sizeof(WNDCLASS));
WndClass.style=CS_HREDRAW|CS_VREDRAW;
WndClass.lpfnWndProc=WndProc;
WndClass.hInstance=hInst;
WndClass.hbrBackground=(HBRUSH)(COLOR_WINDOW+1);
WndClass.lpszClassName = Name;
RegisterClass(&WndClass);//注册窗口
//创建窗口
hwnd=CreateWindow(Name,Name,WS_OVERLAPPEDWINDOW,
10,10,600,400,NULL,NULL,hInst,NULL);
ShowWindow(hwnd,nCmdShow);
UpdateWindow(hwnd);//创建窗口
//消息循环
while(GetMessage(&Msg, NULL, 0,0))
{
TranslateMessage(&Msg);
DispatchMessage(&Msg);
}//消息循环
return Msg.wParam;
}
LRESULT CALLBACK WndProc(HWND hwnd,UINT Message,WPARAM wParam,LPARAM lParam)
{
if(Message==WM_DESTROY)
{
PostQuitMessage(0);
return 0;
}
return DefWindowProc(hwnd,Message,wParam,lParam);
}