Compartir a través de


CDialog::InitModalIndirect

Llame a esta función miembro para inicializar un objeto modal de diálogo mediante una plantilla de cuadro de diálogo que se construye en memoria.

BOOL InitModalIndirect( 
   LPCDLGTEMPLATE lpDialogTemplate, 
   CWnd* pParentWnd = NULL, 
   void* lpDialogInit = NULL 
); 
   BOOL InitModalIndirect( 
   HGLOBAL hDialogTemplate, 
   CWnd* pParentWnd = NULL 
);

Parámetros

  • lpDialogTemplate
    Señala la memoria que contiene una plantilla de cuadro de diálogo utilizada para crear el cuadro de diálogo. Esta plantilla está en forma de información de estructura y de control de DLGTEMPLATE , como se describe en Windows SDK.

  • hDialogTemplate
    Contiene un identificador de memoria global que contiene una plantilla de cuadro de diálogo. Esta plantilla tiene la forma de estructura y datos de DLGTEMPLATE para cada control en el cuadro de diálogo.

  • pParentWnd
    Señala al objeto de la ventana del elemento primario o el propietario (de CWndtipo) al que el objeto de diálogo pertenece. Si es NULL, la ventana primaria del objeto de diálogo se establece en la ventana principal de la aplicación.

  • lpDialogInit
    Apunta a un recurso de DLGINIT .

Valor devuelto

Distinto de cero si el objeto de diálogo ha creado e inicializado correctamente; si no 0.

Comentarios

Para crear un cuadro de diálogo modal indirectamente, primero asigna un bloque de memoria global y rellenelo con la plantilla de cuadro de diálogo. Llamar a continuación al constructor vacío de CDialog para construir el objeto desde el cuadro de diálogo. Siguiente, llamada InitModalIndirect para almacenar el identificador de la plantilla en el cuadro de diálogo de memoria. El cuadro de diálogo de Windows se crea y se muestra más adelante, cuando se llama a la función miembro de DoModal .

Los cuadros de diálogo que contienen controles ActiveX requieren información adicional proporcionada en un recurso de DLGINIT . Para obtener más información, vea el artículo Q231591 de Knowledge Base, “HOWTO: Utilice una plantilla de cuadro de diálogo para crear un diálogo de MFC con un control ActiveX”. Los artículos de Knowledge Base están disponibles en la documentación de Visual Studio de MSDN Library o en la dirección https://support.microsoft.com.

Requisitos

encabezado: afxwin.h

Vea también

Referencia

CDialog Class

Gráfico de jerarquías

DialogBoxIndirect

CDialog::DoModal

CWnd::DestroyWindow

CDialog::CDialog