SDK Program

SDK PROGRAM FOR GDI OBJECT

SOURCE CODE:
#include<>
const char g_szClassName[]="myWindowClass";
LRESULT CALLBACK WndProc(HWND hwnd,UINT msg,WPARAM wparam,LPARAM lparam)
{
HDC hdc;
PAINTSTRUCT ps;
POINT parray[20]={10,70,50,70,50,10,90,10,90,50,30,50,30,90,70,90,70,30,10,30};
switch(msg)
{
case WM_PAINT:
hdc=BeginPaint(hwnd,&ps);
SelectObject(hdc,GetStockObject(GRAY_BRUSH));
SetPolyFillMode(hdc,ALTERNATE);
Polygon(hdc,parray,10);
CONST POINT;
EndPaint(hwnd,&ps);
return 0;
case WM_CLOSE:
DestroyWindow(hwnd);
break;
case WM_DESTROY:
PostQuitMessage(0);
break;
default:
return DefWindowProc(hwnd,msg,wparam,lparam);
}
return 0;
}

int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpcCmdLine,int nCmdShow)
{
WNDCLASSEX wc;
HWND hwnd;
MSG msg;
wc.cbSize=sizeof(WNDCLASSEX);
wc.style=0;
wc.lpfnWndProc =WndProc;
wc.cbClsExtra =0;
wc.cbWndExtra =0;
wc.hInstance =hInstance;
wc.hIcon =LoadIcon(NULL,IDI_APPLICATION);
wc.hCursor =LoadCursor(NULL,IDC_ARROW);
wc.hbrBackground =(HBRUSH)(COLOR_WINDOW+1);
wc.lpszMenuName =NULL;
wc.lpszClassName =g_szClassName;
wc.hIconSm=LoadIcon(NULL,IDI_APPLICATION);
if(!RegisterClassEx(&wc))
{
MessageBox(NULL,"window registration failed!" ,"ERROR",
MB_ICONEXCLAMATIONMB_OK);
return 0;
}
hwnd=CreateWindowEx(WS_EX_CLIENTEDGE,g_szClassName,"filled area", WS_OVERLAPPEDWINDOW,CW_USEDEFAULT,CW_USEDEFAULT,240,120,
NULL,NULL,hInstance,NULL);
if(hwnd==NULL)
{
MessageBox(NULL,"Window Creation failed!","Error",
MB_ICONEXCLAMATIONMB_OK);
return 0;
}
ShowWindow(hwnd,nCmdShow);
UpdateWindow(hwnd);
while(GetMessage(&msg,NULL,0,0)>0)
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return msg.wParam;
}