CDialog::DoModal
Tato členské funkce vyvolání modálním dialogovým oknem a dialogové okno Výsledek po dokončení volání.
virtual INT_PTR DoModal( );
Vrácená hodnota
int Hodnotu, která určuje hodnotu nResult parametr, který byl předán CDialog::EndDialog členské funkce sloužící k zavřete dialogové okno.Vrácená hodnota je-1, pokud funkce nelze vytvořit dialogové okno nebo IDABORT Pokud jiné chybě došlo v takovém případě výstupní okno bude obsahovat informace o chybě z GetLastError.
Poznámky
Tato funkce člena zpracovává všechny interakce s uživatelem, dialogové okno je aktivní.Je to, co dělá dialogové okno modální; uživatel, nemohou komunikovat s windows, dokud nezavřete dialogové okno.
Pokud uživatel klepne jeden kapot v dialogovém okně, například OK nebo Storno popisovači zprávy členské funkce, jako například OnOK nebo OnCancel, se nazývá pokus zavřete dialogové okno.Výchozí OnOK členské funkce bude ověření a aktualizaci dat dialogové okno a zavřete dialogové okno s výsledkem IDOKa výchozí OnCancel členské funkce bude zavřete dialogové okno s výsledkem IDCANCEL bez ověřování nebo aktualizaci dat dialogové okno.Tyto funkce popisovači zprávy změnit své chování lze potlačit.
[!POZNÁMKA]
PreTranslateMessageNyní je volána pro zpracování zpráv modální dialogové okno pole.
Příklad
void CMyDialog::OnMenuShowAboutDialog()
{
// Construct the dialog box passing the
// ID of the dialog template resource
CDialog aboutDlg(IDD_ABOUTBOX);
// Create and show the dialog box
INT_PTR nRet = -1;
nRet = aboutDlg.DoModal();
// Handle the return value from DoModal
switch (nRet)
{
case -1:
AfxMessageBox(_T("Dialog box could not be created!"));
break;
case IDABORT:
// Do something
break;
case IDOK:
// Do something
break;
case IDCANCEL:
// Do something
break;
default:
// Do something
break;
};
}
Požadavky
Záhlaví: afxwin.h