Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Kontrolki2.cpp : Definiuje punkt wejścia dla aplikacji.
- //
- #include <windows.h>
- #include <stdio.h>
- #include <list>
- #include <string.h>
- #include <atlstr.h>
- #define IDC_COMBOBOX 3
- //using namespace std;
- TCHAR NazwaAplikacji[] = TEXT("Aplikacja studencka");
- TCHAR NazwaKlasy[] = TEXT("OKNOGLOWNE");
- HINSTANCE hInstance;
- HWND hwnd[10];
- int width;
- int x_last=10, y_last=10;
- bool zaznacz = false;
- //CString imie, nazwisko;
- CString bigvar;
- void Init_ComboBox_Ele()
- {
- for(int i=0;i<10;i++)
- {
- TCHAR ele[200];
- sprintf_s(ele,"%d",i);
- SendMessage(hwnd[3],CB_ADDSTRING,0,(LPARAM)ele);
- }
- }
- static LRESULT CALLBACK Penis(HWND Okno, UINT Komunikat, WPARAM wParam, LPARAM lParam)
- {
- static int cxClient, cyClient;
- PAINTSTRUCT PS;
- RECT Rect;
- HDC hdc;
- GetClientRect(Okno, &Rect);
- switch (Komunikat) {
- case WM_CREATE:
- {
- GetClientRect(Okno,&Rect);
- int x = (Rect.right/2);
- int y = (Rect.bottom/2);
- hwnd[1] = CreateWindowEx(WS_EX_CLIENTEDGE,TEXT("EDIT"), NULL,WS_CHILD | WS_VISIBLE | WS_BORDER,x-100,y,100,50,Okno,(HMENU)1,hInstance,NULL);
- hwnd[2] = CreateWindowEx(WS_EX_CLIENTEDGE,TEXT("EDIT"), NULL,WS_CHILD | WS_VISIBLE | WS_BORDER,x+50,y,100,50,Okno,(HMENU)2,hInstance,NULL);
- hwnd[3] = CreateWindowEx(WS_EX_CLIENTEDGE,TEXT("COMBOBOX"),NULL,WS_CHILD | WS_VISIBLE | WS_BORDER | CBS_DROPDOWN, x+200,y,100,300,Okno,(HMENU)3,hInstance, NULL);
- hwnd[4] = CreateWindowEx(WS_EX_CLIENTEDGE,TEXT("STATIC"), NULL,WS_CHILD | WS_VISIBLE | WS_BORDER,x,y+200,300,150,Okno,(HMENU)4,hInstance,NULL);
- hwnd[5] = CreateWindowEx(WS_EX_CLIENTEDGE,TEXT("BUTTON"), TEXT("POTWIERDZ"),WS_CHILD | WS_VISIBLE | WS_BORDER,x+350,y,100,50,Okno,(HMENU)5,hInstance,NULL);
- hwnd[6] = CreateWindowEx(WS_EX_CLIENTEDGE,TEXT("BUTTON"), TEXT("CZY EKSTRA PASIERB?"),WS_CHILD | WS_VISIBLE | WS_BORDER | BS_CHECKBOX,x+200,y+150,300,50,Okno,(HMENU)6,hInstance,NULL);
- Init_ComboBox_Ele();
- }
- break;
- case WM_COMMAND:
- {
- switch(LOWORD(wParam))
- {
- case 6:
- {
- if(zaznacz==false)
- {
- SendDlgItemMessage(Okno,6,BM_SETCHECK,1,0);
- zaznacz = true;
- }
- else
- {
- SendDlgItemMessage(Okno,6,BM_SETCHECK,0,0);
- zaznacz = false;
- }
- }break;
- case 5:
- {
- TCHAR imie[200], nazwisko[200];
- DWORD len1 = GetWindowTextLength(hwnd[1]);
- GetWindowText(hwnd[1],imie,len1+1);
- DWORD len2 = GetWindowTextLength(hwnd[2]);
- GetWindowText(hwnd[2],nazwisko,len2+1);
- TCHAR t[10];
- GetDlgItemText(Okno,3,t,3);
- CString temp;
- if(zaznacz)
- {
- temp=_T("Tak");
- }
- else temp = _T("NIE");
- if(bigvar.IsEmpty())
- {
- bigvar += _T("Imie: ");
- bigvar += imie;
- bigvar += _T(" Nazwisko: ");
- bigvar += nazwisko;
- bigvar += _T(" ILE OSÓB: ");
- bigvar += t;
- bigvar += _T(" PASIERB? ");
- bigvar += temp;
- }else
- {
- bigvar += _T("\nImie: ");
- bigvar += imie;
- bigvar += _T(" Nazwisko: ");
- bigvar += nazwisko;
- bigvar += _T(" ILE OSÓB: ");
- bigvar += t;
- bigvar += _T(" PASIERB? ");
- bigvar += temp;
- }
- SetWindowText(hwnd[4],bigvar);
- }break;
- }
- }
- break;
- case WM_DESTROY:
- KillTimer(Okno, 1);
- PostQuitMessage(0);
- break;
- case WM_SIZE:
- {
- //cxClient = LOWORD(lParam)/2;
- //cyClient = HIWORD(lParam)/2;
- //MoveWindow(hwnd[1],cxClient-100,cyClient,100,50, TRUE);
- //MoveWindow(hwnd[2],cxClient+50,cyClient,100,50,TRUE);
- ////MoveWindow(hwnd[3],cxClient,cyClient+100,100,50,TRUE);
- return 0;
- }
- default:
- return DefWindowProc(Okno, Komunikat, wParam, lParam);
- }
- return 0;
- }
- static bool RejestrujKlasy()
- {
- WNDCLASSEX wc;
- wc.cbSize = sizeof(WNDCLASSEX);
- wc.cbClsExtra = wc.cbWndExtra = 0;
- wc.hbrBackground = (HBRUSH)CreateSolidBrush(RGB(0, 0, 128));
- wc.hCursor = LoadCursor(NULL, IDC_ARROW);
- wc.hIcon = LoadIcon(NULL, IDI_APPLICATION);
- wc.hIconSm = LoadIcon(NULL, IDI_APPLICATION);
- wc.hInstance = GetModuleHandle(NULL);
- wc.lpfnWndProc = &Penis;
- wc.lpszClassName = NazwaKlasy;
- wc.lpszMenuName = NULL;
- wc.style = 0;
- return (RegisterClassEx(&wc) != 0);
- }
- static void WyrejestrujKlasy()
- {
- UnregisterClass(NazwaKlasy, GetModuleHandle(NULL));
- }
- int WINAPI WinMain(HINSTANCE Instancja, HINSTANCE Poprzednia, LPSTR Parametry, int Widocznosc)
- {
- // Zarejestruj klasę. Protestuj, jeżeli wystąpił błąd.
- if (!RejestrujKlasy()) {
- MessageBox(NULL, TEXT("Nie udało się zarejestrować klasy okna!"),
- NazwaAplikacji, MB_ICONSTOP | MB_OK);
- return 1;
- }
- // Stwórz główne okno. Również protestuj, jeżeli wystąpił błąd.
- HWND GlowneOkno = CreateWindowEx(WS_EX_APPWINDOW | WS_EX_CLIENTEDGE,
- NazwaKlasy, TEXT("Okno"), WS_OVERLAPPEDWINDOW,
- CW_USEDEFAULT, CW_USEDEFAULT, 1280, 680,
- NULL, NULL, hInstance, NULL);
- if (GlowneOkno == NULL) {
- MessageBox(NULL, TEXT("Nie udało się stworzyć głównego okna!"),
- NazwaAplikacji, MB_ICONSTOP | MB_OK);
- return 2;
- }
- // Wyświetl i uaktualnij nowo stworzone okno.
- ShowWindow(GlowneOkno, Widocznosc);
- UpdateWindow(GlowneOkno);
- // Główna pętla komunikatów wątku.
- MSG Komunikat;
- while (GetMessage(&Komunikat, NULL, 0, 0) > 0) {
- TranslateMessage(&Komunikat);
- DispatchMessage(&Komunikat);
- }
- // Zwolnij pamięć klas i zakończ proces.
- WyrejestrujKlasy();
- return static_cast<int>(Komunikat.wParam);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement