LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
switch (message)
{
case WM_CREATE:
hwndDialog1 = CreateDialog(hInst, MAKEINTRESOURCE(IDD_DIALOG1), hWnd, NULL);
break;
case WM_COMMAND:
wmId = LOWORD(wParam);
// Parse the menu selections:
switch (wmId)
{
case IDM_EXIT:
DestroyWindow(hWnd);
break;
case ID_TEST_FIRE:
dc = GetDC(hwndDialog1);
ShowWindow(hwndDialog1, SW_SHOW);
TCHAR sz[5];
for (int i = 1; i <= 100; ++i)
{
StringCchPrintf(sz, 5, _T("%d"), i);
SetBkColor(dc, RGB(240, 240, 240));
TextOut(dc, 50, 50, sz, lstrlen(sz));
Sleep(100);
}
upTimer = SetTimer(hWnd, 1, 2000, NULL);
break;
default:
return DefWindowProc(hWnd, message, wParam, lParam);
}
break;
case WM_TIMER:
KillTimer(hWnd, upTimer);
ShowWindow(hwndDialog1, SW_HIDE);
break;
case WM_DESTROY:
DestroyWindow(hwndDialog1);
PostQuitMessage(0);
break;
default:
return DefWindowProc(hWnd, message, wParam, lParam);
}
return 0;
}