第一个WinMain程序

#include
#include

LRESULT CALLBACK WinSunProc(
  HWND hwnd,
  UINT uMsg,
  WPARAM wParam,
  LPARAM lParam
);
int WINAPI WinMain(         
 HINSTANCE hInstance,
    HINSTANCE hPrevInstance,
    LPSTR lpCmdLine,
    int nCmdShow
)
{
    WNDCLASS wndcls;
 wndcls.cbClsExtra =0;
 wndcls.cbWndExtra =0;
 wndcls.hbrBackground =(HBRUSH)GetStockObject(BLACK_BRUSH);
 wndcls.hCursor =LoadCursor(hInstance,IDC_CROSS);
 wndcls.hIcon =LoadIcon(hInstance,IDI_ERROR);
 wndcls.hInstance =hInstance;
 wndcls.lpfnWndProc =WinSunProc;
 wndcls.lpszClassName ="weixin2003";
 wndcls.lpszMenuName =NULL;
 wndcls.style =CS_HREDRAW | CS_VREDRAW;
 RegisterClass(&wndcls);

 HWND hwnd;
 hwnd=CreateWindow
  (
      "weixin2003",
   "www.baidu.com",
   WS_OVERLAPPEDWINDOW,
   CW_USEDEFAULT,
   CW_USEDEFAULT,
   CW_USEDEFAULT,
   CW_USEDEFAULT,
   NULL,
   NULL,
   hInstance,
   NULL
  );


 ShowWindow(hwnd,SW_SHOWNORMAL);
 UpdateWindow(hwnd);

 MSG msg;
 while(GetMessage(&msg,NULL,0,0))
 {
     TranslateMessage(&msg);
  DispatchMessage(&msg);
 }
 return 0;

}

LRESULT CALLBACK WinSunProc(
  HWND hwnd,
  UINT uMsg,
  WPARAM wParam,
  LPARAM lParam
)
{
    switch(uMsg)
 {
 case WM_CHAR:
  char szChar[20];
  sprintf(szChar,"char is %d",wParam);
  MessageBox(hwnd,szChar,"weixin",0);
  break;
 case WM_LBUTTONDOWN:
  MessageBox(hwnd,"mouse clicked","weixin",0);
  HDC hdc;
  hdc=GetDC(hwnd);
  TextOut(hdc,0,50,"Hello world",strlen("Hello world"));
  ReleaseDC(hwnd,hdc);
  break;
    case WM_PAINT:
  HDC hDC;
  PAINTSTRUCT ps;
  hDC=BeginPaint(hwnd,&ps);
  TextOut(hDC,0,0,"I am coming",strlen("I am coming"));
  EndPaint(hwnd,&ps);
  break;
 case WM_CLOSE:
  if(IDYES==MessageBox(hwnd,"是否真的结束?","weixin",MB_YESNO))
  { 
   DestroyWindow(hwnd);
        }
  break;
 case WM_DESTROY:
  PostQuitMessage(0);
  break;
 default:
  return DefWindowProc(hwnd,uMsg,wParam,lParam);
 }
 return 0;
}

你可能感兴趣的:(第一个WinMain程序)