// Time.cpp : Defines the entry point for the application.
//
#include "stdafx.h"
#include<stdio.h>
#include "resource.h"
HWND hwndEdit;
HWND hwndEdit1;
DWORD WINAPI ThreadProc(LPVOID lpParameter)
{
TCHAR szBuff[10] = {0};
int num = 0;
GetWindowText(hwndEdit, szBuff, 10);
sscanf(szBuff, "%d", &num);
while(num > 0)
{
--num;
sprintf(szBuff, "%d", num);
Sleep(1000);
SetWindowText(hwndEdit, szBuff);
}
return 0;
}
DWORD WINAPI ThreadProc1(LPVOID lpParameter)
{
TCHAR szBuff[10] = {0};
int num = 0;
GetWindowText(hwndEdit1, szBuff, 10);
sscanf(szBuff, "%d", &num);
while(num < 1000)
{
++num;
sprintf(szBuff, "%d", num);
Sleep(1000);
SetWindowText(hwndEdit1, szBuff);
}
return 0;
}
BOOL CALLBACK ProcDlg(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
TCHAR szBuff[10] = {0};
int num = 0;
switch(uMsg)
{
case WM_CLOSE:
EndDialog(hwnd, 0);
break;
case WM_INITDIALOG:
hwndEdit = GetDlgItem(hwnd, IDC_EDIT1);
SetWindowText(hwndEdit, "1000");
hwndEdit1 = GetDlgItem(hwnd, IDC_EDIT2);
SetWindowText(hwndEdit1, "0");
return TRUE;
case WM_COMMAND:
switch(LOWORD(wParam))
{
case IDC_BUTTON:
HANDLE hThread = ::CreateThread(NULL, 0, ThreadProc, NULL, 0, NULL);
::CloseHandle(hThread);
HANDLE hThread1 = ::CreateThread(NULL, 0, ThreadProc1, NULL, 0, NULL);
::CloseHandle(hThread1);
return TRUE;
}
}
return FALSE;
}
int APIENTRY WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow)
{
// TODO: Place code here.
DialogBox(hInstance, MAKEINTRESOURCE(IDD_DIALOG), NULL, ProcDlg);
return 0;
}