#include<windows.h>
LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM);
int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInst,LPSTR lpszCmdLine,int nCmdShow)
{
HWND hwnd;
MSG Msg;
WNDCLASS wndclass;
char lpszClassName[]="視窗";//視窗類名
char lpszTitle[]="My_Windows";//視窗標題名
//視窗類的定義
wndclass.style=0;// 視窗型別預設型別
wndclass.lpfnWndProc=WndProc;//視窗處理函式為WndProc
wndclass.cbClsExtra=0;//視窗類無擴充套件
wndclass.cbWndExtra=0;//視窗例項無擴充套件
wndclass.hInstance=hInstance;//當前例項控制程式碼
wndclass.hIcon=LoadIcon(NULL,IDI_APPLICATION);//視窗的最小化圖示為預設圖示
wndclass.hCursor=LoadCursor(NULL,IDC_ARROW);//視窗採用箭頭游標
wndclass.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH);//視窗背景為白色
wndclass.lpszMenuName=NULL;//視窗中無選單
wndclass.lpszClassName=lpszClassName; //視窗類名為 “視窗示例 ”
//進行視窗類的註冊
if(!RegisterClass(&wndclass))//如果註冊失敗則發生警告聲音
{
MessageBeep(0);
return FALSE;
}
//建立視窗
hwnd=CreateWindow(lpszClassName,//視窗類名
lpszTitle,//視窗例項的標題名
WS_OVERLAPPEDWINDOW,//視窗風格
CW_USEDEFAULT,//視窗左上角座標的預設值
CW_USEDEFAULT,//
CW_USEDEFAULT,
CW_USEDEFAULT,//視窗的高度和寬的預設值
NULL,//此視窗無父視窗
NULL,//此視窗無主選單
hInstance,//建立此視窗應用程式的當前控制程式碼
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)
{
switch(message)
{
case WM_DESTROY:
PostQuitMessage(0);//呼叫PostQuitMessage
default://預設時採用系統訊息預設處理函式
return DefWindowProc(hwnd,message,wParam,lParam);
}
return 0;
}