Ako Vytvoriť Okno Systému Windows

Obsah:

Ako Vytvoriť Okno Systému Windows
Ako Vytvoriť Okno Systému Windows

Video: Ako Vytvoriť Okno Systému Windows

Video: Ako Vytvoriť Okno Systému Windows
Video: Урок 05 - Окна программ и рабочий стол | Компьютерные курсы 2019 (Windows 10) 2024, December
Anonim

Princípy fungovania používateľského rozhrania operačných systémov rodiny Windows sú založené na koncepcii okna. Pracovná plocha, hlavný panel, zoznamy, dialógové okná, tlačidlá a ponuky sú všetky okná. Preto v skutočnosti, aby ste mohli zobraziť akýkoľvek prvok rozhrania, musíte vytvoriť okno systému Windows.

Ako vytvoriť okno systému Windows
Ako vytvoriť okno systému Windows

Nevyhnutné

  • - prekladač;
  • - Windows Platform SDK.

Inštrukcie

Krok 1

V prípade potreby zaregistrujte triedu okna, ktoré sa má vytvoriť. Zavolajte na funkcie API RegisterClass, RegisterClassEx alebo použite príslušnú funkčnosť použitého rámca.

Funkcie RegisterClass a RegisterClassEx prijímajú ako jediný parameter ukazovatele na štruktúry typu WNDCLASS a WNDCLASSEX. Pri vytváraní okna je možné namiesto názvu triedy použiť návratovú hodnotu typu ATOM. Ak volanie funkcie zlyhá, návratová hodnota je 0.

Vytvorte inštanciu štruktúry typu WNDCLASS alebo WNDCLASSEX. Vyplňte všetky potrebné polia. Správne hodnoty musia byť umiestnené najmä v:

- cbSize - veľkosť štruktúry v bajtoch;

- štýl - sada štýlov pre triedu okien;

- lpfnWndProc - ukazovateľ na procedúru okna;

- hInstance je rukoväť modulu, v ktorom je zaregistrovaná trieda okna;

- lpszClassName je symbolický názov triedy.

Do zvyšných polí je možné zapísať hodnoty NULL. Vykonajte volanie funkcie na registráciu triedy okna. Skontrolujte vrátený výsledok.

Krok 2

V prípade potreby vyberte existujúcu triedu okna. Musíte poznať symbolický názov triedy (ten, ktorý pri registrácii prešiel ukazovateľom lpszClassName) alebo zodpovedajúcu hodnotu ATOM. Trieda môže byť lokálna na úrovni aplikácie, globálna na úrovni aplikácie (zaregistrovaná s príznakom CS_GLOBALCLASS) alebo systémová trieda. Posledný typ obsahuje triedy okien s názvami: Button, ComboBox, Edit, ListBox, MDIClient, ScrollBar, Static. Triedy ako RichEdit20W alebo SysListView32 sa zaregistrujú po načítaní zodpovedajúcich knižníc.

Krok 3

Vytvorte okno systému Windows. Použite funkcie API CreateWindow, CreateWindowEx alebo príslušné obalové metódy pre objekty triedy používaného rámca alebo knižnice. Prototyp funkcie CreateWindowEx vyzerá takto:

HWND CreateWindowEx (DWORD dwExStyle, LPCTSTR lpClassName, LPCTSTR lpWindowName, DWORD dwStyle, int x, int y, int nWidth, int nVýška, HWND hWndParent, HMENU hMenu, HINSTANCE hInstance, LPVOID lpParam);

Funkcia CreateWindow sa líši od CreateWindowEx iba pri absencii parametra dwExStyle.

Volajte CreateWindow alebo CreateWindowEx. Zadajte do parametra lpClassName názov alebo hodnotu ATOM triedy okna, ktorú ste definovali v prvom alebo druhom kroku. Parametre x, y, nWidth, nHeight môžu byť súradnice a veľkosti vytváraného okna. Rukoväť nadradeného okna (ak existuje) je odovzdaná cez hWndParent.

Uložte a analyzujte hodnotu vrátenú príkazom CreateWindow alebo CreateWindowEx. Pri úspechu vrátia kľučku do nového okna, pri neúspechu NULL.

Odporúča: