Sdílet prostřednictvím


Třída CDialog

Základní třída pro zobrazování dialogových oken na obrazovce.

class CDialog : public CWnd

Členy

Veřejné konstruktory

Název

Description

CDialog::CDialog

Konstrukce CDialog objektu.

Veřejné metody

Název

Description

CDialog::Create

Inicializuje CDialog objektu.Vytvoří nemodální okno a připojí jej CDialog objektu.

CDialog::CreateIndirect

Nemodální okno vytvoří z dialogové okno šablony v paměti (nikoli podle prostředků).

CDialog::DoModal

Volá modální dialogové okno a vrátí po dokončení.

CDialog::EndDialog

Modální dialogové okno se zavře.

CDialog::GetDefID

ID ovládacího prvku pushbutton výchozí získá pro dialogové okno.

CDialog::GotoDlgCtrl

Přesune fokus na ovládací prvek dialogové okno určené v dialogovém okně.

CDialog::InitModalIndirect

Modální dialogové okno vytvoří z dialogové okno šablony v paměti (nikoli podle prostředků).Parametry jsou uloženy do funkce DoModal se nazývá.

CDialog::MapDialogRect

Dialogové okno jednotek obdélník převede na obrazovce jednotek.

CDialog::NextDlgCtrl

Přejde na další dialogové okno Ovládací prvek v dialogovém okně.

CDialog::OnInitDialog

Přepsat rozšířit dialogové okno inicializace.

CDialog::OnSetFont

Přepsat určit písmo, které je dialogové okno Ovládací prvek při nakreslí text.

CDialog::PrevDlgCtrl

Přejde na předchozí ovládací prvek dialogové okno v dialogovém okně.

CDialog::SetDefID

Změní výchozí ovládací prvek pushbutton pro dialogové okno určené pushbutton.

CDialog::SetHelpID

Nastaví ID kontextové nápovědy pro dialogové okno.

Chráněné metody

Název

Description

CDialog::OnCancel

Změnit tlačítko Zrušit nebo ESC klíčové akce.Zavře dialogové okno výchozí a DoModal vrátí IDCANCEL.

CDialog::OnOK

Přepsat tlačítko OK akci provést v modálním dialogovým oknem.Zavře dialogové okno výchozí a DoModal vrátí IDOK.

Poznámky

Dialogová okna jsou dva typy: modální a nemodální.Modální dialogové okno musí být uzavřen uživatelem před aplikace pokračuje.Nemodální okno umožňuje uživateli zobrazit dialogové okno a vrátit se do jiného úkolu bez zrušení nebo odebrání dialogové okno.

A CDialog objektu je kombinací dialogové okno šablony a CDialog -odvozené třídy.Použijte dialogové okno editor šablonu dialogové okno vytvořit a uložit v prostředku, pak pomocí Průvodce přidáním třídy vytvořit třídy odvozené od CDialog .

Dialogové okno, stejně jako ostatní okna přijímá zprávy ze systému Windows.V dialogovém okně jsou zejména zájem o zpracování zprávy oznámení z řídí dialogové okno bude interakci uživatele s dialogovým oknem.Vyberte zprávy, které chcete do popisovače a přidá položky odpovídající zpráva mapy a funkce členů popisovači zprávy do třídy můžete pomocí okna Vlastnosti.Potřebujete psát funkce členů popisovač aplikace.

Pokud chcete, můžete vždy psát položek mapování zprávy a funkce členů ručně.

Ve všech ale většina trivial dialogové okno přidejte proměnné členů třídy odvozené dialogové okno Uložit data zadaná uživatelem do dialogové okno Ovládací prvky nebo zobrazení dat pro uživatele.Můžete přidat proměnnou průvodce vytvořit členské proměnné a spojit je s ovládacími prvky.Současně vyberte typ proměnné a přípustný rozsah hodnot pro každou proměnnou.Kód Průvodce přidá proměnné členů třídy odvozené dialogové okno.

Data mapy je generován automaticky zpracovat výměnu dat mezi členské proměnné a dialogové okno Ovládací prvky.Mapa dat. poskytuje funkce, které inicializovat ovládací prvky v dialogovém okně s správné hodnoty, načtení dat a ověření dat.

Modální dialogové okno vytvořit, sestavit objekt zásobníku pomocí konstruktoru třídy odvozené dialogového okna a potom volat DoModal vytvořit dialogové okno a jeho ovládací prvky.Pokud chcete vytvořit nemodální okno, volání vytvořit v konstruktoru třídy dialogové okno.

Můžete také vytvořit šablonu v paměti pomocí DLGTEMPLATE struktury dat podle .Po je vytvořit CDialog objekt, volání CreateIndirect nemodální vytvořit dialogové okno nebo volání InitModalIndirect a DoModal modální dialogové okno vytvořit.

Mapu serveru exchange a ověřování dat je napsána přepsání CWnd::DoDataExchange je do nové třídy dialogové okno.Najdete DoDataExchange členské funkce v CWnd Další informace o funkci exchange a ověřování.

Programátor a rámec volání DoDataExchange nepřímo prostřednictvím volání CWnd::UpdateData.

Volání rámci UpdateData když uživatel klepne na tlačítko OK zavřete modální dialogové okno.(Data nejsou načteny po kliknutí na tlačítko Storno.) Výchozí implementace OnInitDialog také volá UpdateData nastavit počáteční hodnoty ovládacích prvků.Obvykle přednost před OnInitDialog dále inicializovat ovládací prvky.OnInitDialogse nazývá po vytvoření ovládacích prvků dialogového okna a těsně před dialogové okno se zobrazí okno.

Můžete volat CWnd::UpdateData kdykoli během provádění nemodální nebo modální dialogové okno.

Pokud dialogové okno vytvořit ručně, přidáte nezbytné členské proměnné třídy odvozené dialogové okno sami a přidat funkce členů nebo získat tyto hodnoty.

Modální dialogové okno zavře automaticky při stisknutí tlačítka OK nebo Storno nebo když kód volá EndDialog členské funkce.

Při implementaci nemodální okno vždy přepsat OnCancel členské funkce a volání DestroyWindow z uvnitř.Nevolat základní třídy CDialog::OnCancel , protože volá EndDialog , bude potlačit zobrazení dialogového okna, ale nebude zničit.By také přepsat PostNcDestroy nemodální dialogových oken pro odstranění této, protože obvykle přidělena nemodální dialogová okna s nové.Modální dialogová okna jsou obvykle sestavena na snímku a není třeba PostNcDestroy vyčištění.

Další informace o CDialog , viz:

  • Dialogové okno

  • Článek Q262954 znalostní báze: postupy: Resizeable dialogové okno vytvořit s posuvníky

Hierarchii dědičnosti

CObject

CCmdTarget

CWnd

CDialog

Požadavky

Záhlaví: afxwin.h

Viz také

Referenční dokumentace

Třída CWnd

Graf hierarchie

Koncepty

MFC vzorku DLGCBR32

MFC vzorek DLGTEMPL