KOREA University/C++2008. 12. 28. 17:01
#include <windows.h>
LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM);
HINSTANCE g_hInst;
LPCTSTR lpszClass=TEXT("정훈승 자유주제3");
int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpszCmdParam, int nCmdShow)
{
 HWND hWnd;
 MSG Message;
 WNDCLASS WndClass;
 g_hInst=hInstance;
 WndClass.cbClsExtra=0;
 WndClass.cbWndExtra=0;
 WndClass.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH);
 WndClass.hCursor=LoadCursor(NULL,IDC_ARROW);
 WndClass.hIcon=LoadIcon(NULL, IDI_APPLICATION);
 WndClass.hInstance=hInstance;
 WndClass.lpfnWndProc=WndProc;
 WndClass.lpszClassName=lpszClass;
 WndClass.lpszMenuName=NULL;
 WndClass.style=CS_HREDRAW|CS_VREDRAW;
 RegisterClass(&WndClass);
 hWnd=CreateWindow(lpszClass, lpszClass, WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, NULL, (HMENU)NULL, hInstance, NULL);
 ShowWindow(hWnd, nCmdShow);
 while(GetMessage(&Message, NULL, 0, 0)) {
  TranslateMessage(&Message);
  DispatchMessage(&Message);
 }
 return (int)Message.wParam;
}
LRESULT CALLBACK WndProc(HWND hWnd, UINT iMessage, WPARAM wParam, LPARAM lParam)
{
 HDC hdc;
 PAINTSTRUCT ps;
 int i, j;
 static int sx, sy;
 switch(iMessage) {
 case WM_PAINT:
  hdc=BeginPaint(hWnd, &ps);
  for(i=0; i<768; i=i+17)
  {
   MoveToEx(hdc,0,i,NULL);
   LineTo(hdc,1024,i);
  }
  for(j=0; j<1024; j=j+17)
  {
   MoveToEx(hdc,j,0,NULL);
   LineTo(hdc,j,768);
  }
  EndPaint(hWnd, &ps);
  return 0;
 case WM_LBUTTONDOWN:
  hdc=GetDC(hWnd);
  sx=LOWORD(lParam);
  sy=HIWORD(lParam);
  TextOut(hdc, sx, sy, TEXT("●"), 2);
  ReleaseDC(hWnd, hdc);
  return 0;
 case WM_RBUTTONDOWN:
  hdc=GetDC(hWnd);
  sx=LOWORD(lParam);
  sy=HIWORD(lParam);
  TextOut(hdc, sx, sy, TEXT("○"), 2);
  ReleaseDC(hWnd, hdc);
  return 0;
 
 case WM_DESTROY:
  PostQuitMessage(0);
  return 0;
 }
 return(DefWindowProc(hWnd, iMessage, wParam, lParam));
}

이 소스는 아주 간단한 소스다.
내가 짰으면서도 너무 아이디어가 기발-_-해서 공유한다.

윈도우즈프로그래밍(API) 초반부 단계 숙제용으로 탁월한 예가 될 것이다.

화면에 바둑판을 그려놓고
왼쪽버튼 누르면 검정색돌, 오른쪽버튼 누르면 흰색돌

아주 기초적인 지식으로 이따구 것을 만들어서 숙제 제출하면
아마 담당 교수님이나 담당 강의선생생님께 칭찬을 들을것이라 예상된다.
Posted by 정훈승