CreateDialogIndirect makro vytvorí sú nemodálne dialógovým oknom z dialógového okna pole Šablóna v pamäti. CreateDialogIndirect makro používa funkciu CreateDialogIndirectParam.
(HWND CreateDialogIndirect HINSTANCE hInstance; / / spracovávať na aplikáciu stupňaLPCDLGTEMPLATElpTemplate; / / ukazovateľ do dialógového okna pole ŠablónaHWNDhWndParent; / / zvládnuť vlastník oknaDLGPROClpDialogFunc / / ukazovateľ do dialógového poľa postup);
V štandardom šablóna v hlavičke je DLGTEMPLATE štruktúra nasleduje ďalšie polia premenlivej dĺžky. Údaje pre každý ovládací prvok pozostáva z DLGITEMTEMPLATE štruktúra nasleduje ďalšie polia premenlivej dĺžky.
V šablóne políčko rozšírené dialógové okno Hlavička používa DLGTEMPLATEEX formát a definície kontrolu použite formát DLGITEMTEMPLATEEX.
Po CreateDialogIndirect vráti, môžete uvoľniť šablónu používa len získať dialógovým oknom začal.
Ak funkciu podarí, vrátená hodnota je okno rukoväť do dialógového okna.
Ak funkcia zlyhá, vrátená hodnota je NULL. Získajte rozšírené informácie o chybách, volajte na číslo GetLastError.
CreateDialogIndirect makro používa funkciu CreateWindowEx na vytvorenie dialógového okna. CreateDialogIndirect potom odošle správu WM_INITDIALOG postupu dialógové okno pole. Ak šablóna určuje DS_SETFONT štýl, funkciu tiež pošle správu WM_SETFONT postupu dialógové okno pole. Funkcia zobrazí dialógové okno, ak šablóna určuje štýl WS_VISIBLE. Napokon, CreateDialogIndirect vráti rukoväť okno do dialógového okna.
Po CreateDialogIndirect vracia, je použiť funkciu ShowWindow zobrazte dialógové okno (ak ešte nie je viditeľný). Zničiť dialógovom okne použiť funkciu DestroyWindow.
Štandardné dialógové okno pole Šablóna, zblížiť DLGTEMPLATE štruktúra a každá z DLGITEMTEMPLATE štruktúry DWORD s hranicami. Vytvorenie údajov pole, ktoré takto DLGITEMTEMPLATE konštrukcie musia byť zarovnané na hranicu DWORD . Všetky ostatné polia premenlivej dĺžky v šablóne musí musia byť zoradené slovo hranice.
Šablónu políčka rozšírený dialóg zblížiť DLGTEMPLATEEX hlavičky a každej ovládanie definície DLGITEMTEMPLATEEX DWORD s hranicami. Vytvorenie údajov poľa, ak nejaké sú, ktoré nasleduje DLGITEMTEMPLATEEX štruktúra musí tiež zosúladené na hranicu DWORD . Všetky ostatné polia premenlivej dĺžky v šablóne zblížiť slovo hranicami.
Všetky znakových reťazcov v dialógovom okne blok šablóny, napríklad názvy pre dialógové okno a tlačidlá, musí byť reťazcov Unicode. Na vytvorenie kódu, ktorý pracuje na Windows a Windows NT, použite MultiByteToWideChar funkciu na generovanie týchto reťazcov Unicode.
Systém Windows 95 a novší:Systém môže podporovať maximálne 255 ovládacie prvky dialógového okna pole šablónu. Ak chcete umiestniť viac ako 255 ovládacie prvky v dialógovom okne, vytvoriť ovládacie prvky v WM_INITDIALOG manipulátor hlásení skôr ako umiestnenie v šablóne.
Windows CE: Nie všetky štýly sú podporované v štruktúre DLGTEMPLATE v dialógovom okne Šablóny uvedené parametra lpTemplate .
nbsp; Systém Windows &NT: vyžaduje verzia 3.1 alebo novšia.
Windows:Vyžaduje systém Windows 95 alebo novším.
Windows CE:Vyžaduje verziu 1.0 alebo novšiu verziu.
Hlavičky:Deklarovaný v súbore winuser.h.
Importovať knižnica:Použiť user32.lib.
Unicode:Implementovaný ako Unicode, ANSI verzia v systéme Windows NT.
Dialógové okná prehľad, dialógové okno pole funkcie, CreateDialog, CreateDialogIndirectParam, CreateDialogParam, CreateWindowEx, DestroyWindow, DialogProc, DLGITEMTEMPLATE, DLGITEMTEMPLATEEX, DLGTEMPLATE, DLGTEMPLATEEX, MultiByteToWideChar, ShowWindow, WM_INITDIALOG, WM_SETFONT