/***************************************************************************** PROGRAM: Mhello.c PURPOSE: "2.pienin Windows-ohjelma". Tulostaa n„ytt””n nimen,osoitteen ja puh.numeron Editor: Sami Hanhikoski Vesa Lappalaisen malliohjelmista typistetyist„ ohjelmista Project: mhello.c, mhello.def *****************************************************************************/ #include /* Tarvitaan kaikissa Windows C-ohjelmissa */ LONG CALLBACK _export MainWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) { PAINTSTRUCT ps; switch (message) { case WM_PAINT: /* Viesti: Piirr„ ikkuna uudelleen */ if ( BeginPaint(hWnd,&ps) == 0 ) return NULL; TextOut(ps.hdc, 10, 10, "Sami Hanhikoski",15); TextOut(ps.hdc, 10, 30, "Kippo 2 C 12",12); TextOut(ps.hdc, 10, 50, "941-644580",10); EndPaint(hWnd,&ps); return NULL; case WM_DESTROY: /* Viesti: ikkuna h„vitet„„n */ PostQuitMessage(0); return NULL; default: /* Antaa Windowsin k„sitell„ muut */ break; } return DefWindowProc(hWnd, message, wParam, lParam); } int PASCAL WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { WNDCLASS wc; /* Ikkunaluokka */ HWND hWnd; /* P„„ikkunan kahva */ MSG msg; /* Viesti */ (void)lpCmdLine; /* H„m„yst„, jottei valitusta param. k„ytt. */ if (!hPrevInstance) { /* Onko muita esiintymi„ k„ynnisss„? */ wc.style = NULL; wc.lpfnWndProc = MainWndProc; wc.cbClsExtra = 0; wc.cbWndExtra = 0; wc.hInstance = hInstance; wc.hIcon = LoadIcon(NULL, IDI_APPLICATION); wc.hCursor = LoadCursor(NULL, IDC_ARROW); wc.hbrBackground = GetStockObject(WHITE_BRUSH); wc.lpszMenuName = NULL; wc.lpszClassName = "WHelloWClass"; if (!RegisterClass(&wc)) return 1; } hWnd = CreateWindow("WHelloWClass","Windows nimi",WS_OVERLAPPEDWINDOW, CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT, NULL,NULL,hInstance,NULL); if ( !hWnd ) return 1; ShowWindow(hWnd, nCmdShow); /* N„ytet„„n ikkuna */ UpdateWindow(hWnd); /* L„hetet„„n WM_PAINT viesti */ while (GetMessage(&msg,NULL,NULL,NULL)) { TranslateMessage(&msg); /* Tulkitaan virtuaaliset näp. koodit */ DispatchMessage(&msg); /* L„hetet„„n viesti ikkunalle */ } return msg.wParam; /* Palautetaan PostQuitMessage-funktion arvo */ }