#include <windows.h><br />LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);<br />int WINAPI WinMain(<br /> HINSTANCE hInstance,<br /> HINSTANCE hPrevInstance,<br /> LPSTR lpCmdLine,<br /> int nCmdShow)<br />{<br />HWND hWnd;<br />WNDCLASS wndclass;<br />static TCHAR szAppName[] = TEXT ("HELLO") ;<br />MSG msg;<br />BOOL bRet;</p><p>wndclass.style=CS_HREDRAW | CS_VREDRAW;<br />wndclass.lpfnWndProc=(WNDPROC)WndProc;<br />wndclass.cbClsExtra=0;<br />wndclass.cbWndExtra=0;<br />wndclass.hInstance = hInstance ;<br />wndclass.hIcon=LoadIcon(NULL, IDI_APPLICATION);<br />wndclass.hCursor=LoadCursor(NULL, IDC_ARROW);<br />wndclass.hbrBackground=(HBRUSH) GetStockObject (WHITE_BRUSH);<br />wndclass.lpszMenuName=NULL;<br />wndclass.lpszClassName=szAppName;</p><p>if (!RegisterClass (&wndclass))<br />return 0 ;</p><p>hWnd = CreateWindow(szAppName,<br />TEXT ("HELLO"),<br />WS_OVERLAPPEDWINDOW,<br />0,<br />0,<br />800,<br />600,<br />NULL,<br />NULL,<br />hInstance,<br />NULL);</p><p>if (!hWnd)<br />return 0;</p><p>ShowWindow(hWnd, nCmdShow);<br />UpdateWindow(hWnd);</p><p>bRet=TRUE;<br />while (bRet)<br />{<br />bRet=GetMessage(&msg, NULL, 0, 0);<br />if(bRet==-1)<br />return 0;//error<br />if(bRet)<br />{<br />TranslateMessage(&msg);<br />DispatchMessage(&msg);<br />}<br />}<br />return msg.wParam;<br />}<br />LRESULT CALLBACK WndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)<br />{<br />PAINTSTRUCT ps;<br />HDC hdc;<br />RECTrect ;<br />static HBRUSH hBrush;<br />static BYTE Red,Green,Blue;<br />static DWORD color;</p><p>switch(msg)<br />{<br />case WM_CREATE:<br />color=0;<br />SetTimer (hwnd, 1, 10, NULL) ;<br />break;<br />case WM_TIMER:<br />color=color+1;<br />if(color>0x00FFFFFF)<br />color=0;<br />InvalidateRect (hwnd, NULL, FALSE) ;<br />break;<br />case WM_PAINT:<br />hdc = BeginPaint(hwnd, &ps);<br />GetClientRect (hwnd, &rect) ;<br />hBrush = CreateSolidBrush (color) ;<br />FillRect (hdc, &rect, hBrush) ;<br />EndPaint(hwnd, &ps);<br />DeleteObject (hBrush) ;<br />break;<br />case WM_CLOSE:<br />DestroyWindow(hwnd);<br />break;<br />case WM_DESTROY:<br />KillTimer (hwnd, 1) ;<br />PostQuitMessage(0);<br />break;<br />default:<br />return DefWindowProc(hwnd, msg, wParam, lParam);<br />}<br />return 0;<br />}<br />