본문 바로가기

공부방

WinApi



#include <windows.h>


char temp[80];
char temp1[80];
LRESULT CALLBACK WndProc(HWND hWnd,
       UINT message,
       WPARAM wParam,
       LPARAM lParam);


int APIENTRY WinMain(HINSTANCE hInstance,
      HINSTANCE hPrevhInstance,
      PSTR szCmdLine,
      int nCmdShow)

{
 WNDCLASSEX wcex;
 HWND hWnd;
 MSG msg;
 char *szAppName="test";
 char *szTitle="hellow world";

 wcex.cbSize=sizeof(WNDCLASSEX);
 wcex.style=CS_HREDRAW | CS_VREDRAW;
 wcex.lpfnWndProc=(WNDPROC)WndProc;
 wcex.cbClsExtra=0;
 wcex.cbWndExtra=0;
 wcex.hInstance=hInstance;
 wcex.hIcon=LoadIcon(NULL,IDI_APPLICATION);
 wcex.hCursor=LoadCursor(NULL,IDC_ARROW);
 wcex.hbrBackground=(HBRUSH)(COLOR_WINDOW+1);
 wcex.lpszMenuName=NULL;
 wcex.lpszClassName=szAppName;
 wcex.hIconSm=LoadIcon(NULL,IDI_APPLICATION);
 
 RegisterClassEx(&wcex);
 hWnd=CreateWindow(szAppName,
  szTitle,
        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)
{

 PAINTSTRUCT ps;
 HDC hdc;
 switch(message)
 {

 case WM_CREATE:
  strcpy(temp,"now it's testing");
  break;

 case WM_LBUTTONDOWN:
  break;
 
 case WM_RBUTTONDOWN:  
  break;
   
 case WM_PAINT:
  break;

 case WM_DESTROY:
  PostQuitMessage(0);
  break;

 default:
  break;
 }
 return DefWindowProc(hWnd,message,wParam,lParam);

}