// Mittakaavamuunnosohjelma // ------------------------ // (c) Janne Hansen 1995 #include #include #include #include "mitakava.rh" BOOL CALLBACK _export MainWndProc (HWND hWnd,UINT message,WPARAM wParam,LPARAM lParam) { #pragma argsused switch (message) { case WM_COMMAND: switch (GET_WM_COMMAND_ID(wParam,lParam)) { case IDC_KARTALLA : switch (GET_WM_COMMAND_CMD(wParam,lParam)) { case EN_CHANGE : { char s[20]; double mk=0; GetDlgItemText(hWnd,IDC_KARTALLA,s,sizeof(s)); sscanf(s,"%lf",&mk); sprintf(s,"%lg",mk*10.0*20000.0/(1000.0*1000.0)); SetDlgItemText(hWnd,IDC_LUONNOSSA,s); return TRUE; } } case IDC_LUONNOSSA : return TRUE; case IDC_EXIT: PostQuitMessage(0); return TRUE; } /* WM_COMMAND */ case WM_DESTROY: PostQuitMessage(0); return TRUE; } return FALSE; } int PASCAL WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nCmdShow) { #pragma argsused MSG msg; FARPROC lProc = MakeProcInstance ((FARPROC)MainWndProc, hInstance); HWND hWnd = CreateDialog(hInstance,"MUUNNOS",NULL,(DLGPROC)lProc); if (!hWnd) goto Lopetus; // ViestiSilmukka ------------------------------------------ while (GetMessage(&msg,NULL,NULL,NULL)) { if (IsDialogMessage (hWnd,&msg)) continue; TranslateMessage (&msg); // Tulkitaan message DispatchMessage (&msg); // Lähetetään viesti akkunalle } Lopetus: (void) FreeProcInstance(lProc); return 0; }