使用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);
}