Sdílet prostřednictvím


Dialogová okna (dialogová okna)

Dialogové okno je dočasné okno, které aplikace vytvoří pro načtení uživatelského vstupu. Aplikace obvykle používá dialogová okna k zobrazení výzvy uživatele k zadání dalších informací o položkách nabídky. Dialogové okno obvykle obsahuje jeden nebo více ovládacích prvků (podřízená okna), se kterými uživatel zadává text, vybírá možnosti nebo směruje akci.

Systém Windows také poskytuje předdefinovaná dialogová okna, která podporují běžné položky nabídek, jako jsou Otevřít a Tisk. Aplikace, které používají tyto položky nabídky, by měly používat běžná dialogová okna k zobrazení výzvy k zadání tohoto uživatelského vstupu bez ohledu na typ aplikace.

V této části

Jméno Popis
o dialogových oknech Popisuje použití dialogových oken v uživatelském rozhraní pro vaše aplikace.
– aspekty programování Tento přehled popisuje některé aspekty programování týkající se dialogových oken.
použití dialogových oken Pomocí dialogových oken zobrazíte informace a zobrazíte výzvu k zadání vstupu od uživatele.
Referenční dialogového okna Referenční informace k rozhraní API
knihovna běžných dialogových oken Popisuje použití běžných dialogových oken v uživatelském rozhraní pro vaše aplikace.

Funkce dialogového okna

Jméno Popis
CreateDialog Vytvoří bezmodální dialogové okno z prostředku šablony dialogového okna.
CreateDialogIndirect Vytvoří bezmodální dialogové okno ze šablony dialogového okna v paměti.
createDialogIndirectParam Vytvoří bezmodální dialogové okno ze šablony dialogového okna v paměti. Před zobrazením dialogového okna funkce předá proceduru dialogového okna hodnotu definovanou aplikací jako parametr lParam zprávy WM_INITDIALOG. Aplikace může tuto hodnotu použít k inicializaci ovládacích prvků dialogového okna.
CreateDialogParam Vytvoří bezmodální dialogové okno z prostředku šablony dialogového okna. Před zobrazením dialogového okna funkce předá proceduru dialogového okna hodnotu definovanou aplikací jako parametr lParam zprávy WM_INITDIALOG. Aplikace může tuto hodnotu použít k inicializaci ovládacích prvků dialogového okna.
DefDlgProc Volá výchozí proceduru okna dialogového okna, která poskytuje výchozí zpracování pro všechny zprávy okna, které dialogové okno s soukromou třídou okna nezpracová.
dialogového okna Vytvoří modální dialogové okno z prostředku šablony dialogového okna. DialogBox nevrací ovládací prvek, dokud zadaná funkce zpětného volání neukončí modální dialogové okno voláním funkce EndDialog.
DialogBoxIndirect Vytvoří modální dialogové okno ze šablony dialogového okna v paměti. DialogBoxIndirect nevrací ovládací prvek, dokud zadaná funkce zpětného volání neukončí modální dialogové okno voláním funkce EndDialog.
DialogBoxIndirectParam Vytvoří modální dialogové okno ze šablony dialogového okna v paměti. Před zobrazením dialogového okna funkce předá proceduru dialogového okna hodnotu definovanou aplikací jako parametr lParam zprávy WM_INITDIALOG. Aplikace může tuto hodnotu použít k inicializaci ovládacích prvků dialogového okna.
DialogBoxParam Vytvoří modální dialogové okno z prostředku šablony dialogového okna. Před zobrazením dialogového okna funkce předá proceduru dialogového okna hodnotu definovanou aplikací jako parametr lParam zprávy WM_INITDIALOG. Aplikace může tuto hodnotu použít k inicializaci ovládacích prvků dialogového okna.
dialogového okna Funkce zpětného volání definovaná aplikací, která se používá s CreateDialog a DialogBox rodiny funkcí. Zpracovává zprávy odeslané do modálního nebo bezmodálního dialogového okna. Typ DLGPROC definuje ukazatel na tuto funkci zpětného volání. DialogProc je zástupný symbol pro název funkce definované aplikací.
EndDialog Zničí modální dialogové okno, což způsobí, že systém ukončí veškeré zpracování dialogového okna.
GetDialogBaseUnits Načte základní jednotky dialogového okna systému, což je průměrná šířka a výška znaků v systémovém písmu. U dialogových oken, která používají systémové písmo, můžete tyto hodnoty použít k převodu mezi jednotkami šablon dialogového okna, jak je uvedeno v šablonách dialogových oken a pixelech. U dialogových oken, která nepoužívají systémové písmo, závisí převod z jednotek šablon dialogového okna na pixely na písmo použité v dialogovém okně.
GetDlgCtrlID Načte identifikátor zadaného ovládacího prvku.
GetDlgItem Načte popisovač do ovládacího prvku v zadaném dialogovém okně.
GetDlgItemInt Přeloží text zadaného ovládacího prvku v dialogovém okně na celočíselnou hodnotu.
GetDlgItemText Načte název nebo text přidružený k ovládacímu prvku v dialogovém okně.
GetNextDlgGroupItem Načte popisovač na první ovládací prvek ve skupině ovládacích prvků, které předchází (nebo následuje) zadaný ovládací prvek v dialogovém okně.
GetNextDlgTabItem Načte popisovač na první ovládací prvek, který má styl WS_TABSTOP, který předchází zadanému ovládacího prvku (nebo ho následuje).
IsDialogMessage Určuje, zda je zpráva určena pro zadané dialogové okno, a pokud ano, zpracuje zprávu.
MapDialogRect Převede zadané jednotky dialogového okna na jednotky obrazovky (pixely). Funkce nahradí souřadnice v zadané RECT struktury převedenými souřadnicemi, což umožňuje, aby struktura byla použita k vytvoření dialogového okna nebo umístění ovládacího prvku v dialogovém okně.
MessageBox Zobrazí modální dialogové okno, které obsahuje ikonu systému, sadu tlačítek a stručnou zprávu specifickou pro aplikaci, jako je stav nebo informace o chybě. Pole se zprávou vrátí celočíselnou hodnotu, která označuje, na které tlačítko uživatel klikl.
MessageBoxEx Vytvoří, zobrazí a obsluhuje okno se zprávou. Pole zprávy obsahuje zprávu definovanou aplikací a název a navíc libovolnou kombinaci předdefinovaných ikon a tlačítek. Tlačítka jsou v jazyce uživatelského rozhraní systému.
MessageBoxIndirect Vytvoří, zobrazí a obsluhuje okno se zprávou. Pole zprávy obsahuje text a název zprávy definované aplikací, libovolnou ikonu a libovolnou kombinaci předdefinovaných tlačítek.
SendDlgItemMessage Odešle zprávu zadanému ovládacímu prvku v dialogovém okně.
SetDlgItemInt Nastaví text ovládacího prvku v dialogovém okně na řetězcovou reprezentaci zadané celočíselné hodnoty.
SetDlgItemText Nastaví název nebo text ovládacího prvku v dialogovém okně.

Zprávy dialogového okna

Jméno Popis
DM_GETDEFID Načte identifikátor výchozího ovládacího prvku push button pro dialogové okno.
DM_REPOSITION Přemísťuje dialogové okno nejvyšší úrovně tak, aby se vešly do oblasti plochy. Aplikace může po změně velikosti odeslat tuto zprávu do dialogového okna, aby se zajistilo, že celé dialogové okno zůstane viditelné.
DM_SETDEFID Změní identifikátor výchozího tlačítka pro otevření dialogového okna.

Oznámení dialogového okna

Jméno Popis
WM_CTLCOLORDLG Odesláno do dialogového okna před tím, než systém nakreslí dialogové okno. Když odpovíte na tuto zprávu, může dialogové okno nastavit jeho text a barvy pozadí pomocí zadaného kontextového úchytu zařízení pro zobrazení.
WM_ENTERIDLE Odesláno do okna vlastníka modálního dialogového okna nebo nabídky, která zadává stav nečinnosti. Modální dialogové okno nebo nabídka zadá stav nečinnosti, pokud žádné zprávy čekají ve frontě po zpracování jedné nebo více předchozích zpráv.
WM_GETDLGCODE Odesláno do procedury okna přidružené k ovládacímu prvku. Ve výchozím nastavení systém zpracovává veškeré vstupy klávesnice do ovládacího prvku; systém interpretuje určité typy vstupu klávesnice jako navigační klávesy dialogového okna. Chcete-li toto výchozí chování přepsat, může ovládací prvek odpovědět na WM_GETDLGCODE zprávu, která označuje typy vstupu, které chce zpracovat sám.
WM_INITDIALOG Odesláno do procedury dialogového okna bezprostředně před zobrazením dialogového okna. Postupy dialogového okna obvykle používají tuto zprávu k inicializaci ovládacích prvků a provádění dalších inicializačních úloh, které ovlivňují vzhled dialogového okna.
WM_NEXTDLGCTL Odesláno do procedury dialogového okna pro nastavení fokusu klávesnice na jiný ovládací prvek v dialogovém okně.

Struktury dialogových oken

Jméno Popis
DLGITEMTEMPLATE Definuje rozměry a styl ovládacího prvku v dialogovém okně. Jedna nebo více těchto struktur se kombinuje s DLGTEMPLATE strukturou, která vytvoří standardní šablonu pro dialogové okno.
DLGITEMTEMPLATEEX Popisuje rozšířené dialogové okno. Popis formátu rozšířené šablony dialogového okna naleznete v tématu DLGTEMPLATEEX.
DLGTEMPLATE Definuje rozměry a styl dialogového okna. Tato struktura, vždy první v standardní šabloně dialogového okna, také určuje počet ovládacích prvků v dialogovém okně, a proto určuje počet následných DLGITEMTEMPLATE struktury v šabloně.
DLGTEMPLATEEX Šablona rozšířeného dialogového okna začíná záhlavím DLGTEMPLATEEX popisem dialogového okna a určuje počet ovládacích prvků v dialogovém okně. U každého ovládacího prvku v dialogovém okně má šablona rozšířeného dialogového okna blok dat, který používá DLGITEMTEMPLATEEX formát popisovat ovládací prvek.
MSGBOXPARAMS Obsahuje informace použité k zobrazení pole se zprávou. Tuto strukturu používá funkce MessageBoxIndirect.