Compartir a través de


CDialog::EndDialog

Llame a esta función miembro para finalizar un cuadro de diálogo modal.

void EndDialog( 
   int nResult  
);

Parámetros

  • nResult
    Contiene el valor que va del cuadro de diálogo al llamador de DoModal.

Comentarios

Esta función miembro devuelve nResult como valor devuelto de DoModal. Debe utilizar la función de EndDialog para completar el procesamiento siempre que se crea un cuadro de diálogo modal.

Puede llamar a EndDialog en cualquier momento, incluso en OnInitDialog, en cuyo caso se cierra el cuadro de diálogo antes de mostrar o antes de que se establece el foco de entrada.

EndDialog no cierra el cuadro de diálogo inmediatamente. En su lugar, establece un marcador que dirige el resultado del cuadro de diálogo para cerrar tan pronto como el controlador de mensajes actual vuelva.

Ejemplo

void CMyDialog::OnMenuShowSimpleModal()
{
   CSimpleDlg myDlg;
   INT_PTR nRet = myDlg.DoModal();

   if (nRet == IDOK || nRet == 5)
      AfxMessageBox(_T("Dialog closed successfully"));
}
void CSimpleDlg::OnRButtonUp(UINT nFlags, CPoint point)
{
   UNREFERENCED_PARAMETER(nFlags);
   // Do something 

   int nRet = point.x; // Just any value would do!
   EndDialog(nRet); // This value is returned by DoModal! 

   // Do something 

   return; // Dialog closed and DoModal returns only here!
}

Requisitos

encabezado: afxwin.h

Vea también

Referencia

CDialog Class

Gráfico de jerarquías

CDialog::DoModal

CDialog::OnOK

CDialog::OnCancel