Sdílet prostřednictvím


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

Viz také

Referenční dokumentace

Třída CDialog

Diagram hierarchie

DialogBox

CWnd::IsDialogMessage