Kako Stvoriti Windows Prozor

Sadržaj:

Kako Stvoriti Windows Prozor
Kako Stvoriti Windows Prozor

Video: Kako Stvoriti Windows Prozor

Video: Kako Stvoriti Windows Prozor
Video: Prelazim u Stolare 🤪 *kako napraviti prozor* 2024, Svibanj
Anonim

Načela funkcioniranja korisničkog sučelja operativnih sustava obitelji Windows temelje se na konceptu prozora. Radna površina, programska traka, popisi, dijaloški okviri, gumbi i izbornici su svi prozori. Stoga, u stvari, da biste prikazali bilo koji element sučelja, morate stvoriti prozor prozora.

Kako stvoriti Windows prozor
Kako stvoriti Windows prozor

Potrebno

  • - sastavljač;
  • - SDK za platformu Windows.

Upute

Korak 1

Ako je potrebno, registrirajte klasu prozora koji će se stvoriti. Pozovite API funkcije RegisterClass, RegisterClassEx ili upotrijebite odgovarajuću funkcionalnost korištenog okvira.

Funkcije RegisterClass i RegisterClassEx prihvaćaju pokazivače na strukture tipa WNDCLASS, odnosno WNDCLASSEX, kao svoj jedini parametar. Povratna vrijednost tipa ATOM može se koristiti umjesto naziva klase prilikom stvaranja prozora. Ako poziv funkcije ne uspije, povratna vrijednost je 0.

Instancirajte strukturu tipa WNDCLASS ili WNDCLASSEX. Ispunite sva potrebna polja. Točne vrijednosti moraju se posebno staviti u:

- cbSize - veličina strukture u bajtovima;

- style - skup stilova za klasu prozora;

- lpfnWndProc - pokazivač na proceduru prozora;

- hInstance je ručka modula u kojem je registrirana klasa prozora;

- lpszClassName je simbolički naziv klase.

Ostala polja mogu se zapisati s NULL vrijednostima. Uputi funkcijski poziv za registraciju klase prozora. Provjerite vraćeni rezultat.

Korak 2

Ako je potrebno, odaberite postojeću klasu prozora. Morate znati simbolično ime klase (ono koje je prošlo kroz pokazivač lpszClassName prilikom registracije) ili odgovarajuću vrijednost ATOM. Klasa može biti lokalna na razini aplikacije, globalna na razini aplikacije (registrirana s zastavicom CS_GLOBALCLASS) ili sistemska klasa. Posljednja vrsta uključuje klase prozora s imenima: Button, ComboBox, Edit, ListBox, MDIClient, ScrollBar, Static. Klase poput RichEdit20W ili SysListView32 registriraju se kada se učitaju odgovarajuće knjižnice.

3. korak

Stvorite Windows prozor. Koristite API funkcije CreateWindow, CreateWindowEx ili odgovarajuće metode omota za objekte klase okvira ili biblioteke koje koristite. Prototip funkcije CreateWindowEx izgleda ovako:

HWND CreateWindowEx (DWORD dwExStyle, LPCTSTR lpClassName, LPCTSTR lpWindowName, DWORD dwStyle, int x, int y, int širina, int nHeight, HWND hWndParent, HMENU hMenu, HINSTANCE trenutak, LPVOID lpParam);

Funkcija CreateWindow razlikuje se od CreateWindowEx samo u nedostatku parametra dwExStyle.

Pozovite CreateWindow ili CreateWindowEx. U parametar lpClassName proslijedite ime ili ATOM vrijednost klase prozora koju ste definirali u prvom ili drugom koraku. Parametri x, y, nWidth, nHeight mogu biti koordinate i veličine prozora koji se stvara. Ručka nadređenog prozora (ako postoji) prolazi se kroz hWndParent.

Spremite i raščlanite vrijednost koju su vratili CreateWindow ili CreateWindowEx. Nakon uspjeha vratit će kvaku u novi prozor; u slučaju neuspjeha, NULL.

Preporučeni: