Compartir a través de


Macro CreateDialogA (winuser.h)

Crea un cuadro de diálogo modela a partir de un recurso de plantilla de cuadro de diálogo. La macro CreateDialog usa la función CreateDialogParam .

Sintaxis

void CreateDialogA(
  [in, optional]  hInstance,
  [in]            lpName,
  [in, optional]  hWndParent,
  [in, optional]  lpDialogFunc
);

Parámetros

[in, optional] hInstance

Tipo: HINSTANCE

Identificador del módulo que contiene la plantilla del cuadro de diálogo. Si este parámetro es NULL, se usa el ejecutable actual.

[in] lpName

Tipo: LPCTSTR

Plantilla del cuadro de diálogo. Este parámetro es el puntero a una cadena de caracteres terminada en NULL que especifica el nombre de la plantilla de cuadro de diálogo o un valor entero que especifica el identificador de recurso de la plantilla de cuadro de diálogo. Si el parámetro especifica un identificador de recurso, su palabra de orden superior debe ser cero y su palabra de orden inferior debe contener el identificador. Puede usar la macro MAKEINTRESOURCE para crear este valor.

[in, optional] hWndParent

Tipo: HWND

Identificador de la ventana que posee el cuadro de diálogo.

[in, optional] lpDialogFunc

Tipo: DLGPROC

Puntero al procedimiento del cuadro de diálogo. Para obtener más información sobre el procedimiento del cuadro de diálogo, consulte DialogProc.

Valor devuelto

None

Observaciones

La función CreateDialog usa la función CreateWindowEx para crear el cuadro de diálogo. CreateDialog envía un mensaje de WM_INITDIALOG (y un mensaje de WM_SETFONT si la plantilla especifica el estilo DS_SETFONT o DS_SHELLFONT ) al procedimiento del cuadro de diálogo. La función muestra el cuadro de diálogo si la plantilla especifica el estilo WS_VISIBLE . Por último, CreateDialog devuelve el identificador de ventana al cuadro de diálogo.

Una vez que Se devuelve CreateDialog , la aplicación muestra el cuadro de diálogo (si aún no se muestra) mediante la función ShowWindow . La aplicación destruye el cuadro de diálogo mediante la función DestroyWindow . Para admitir la navegación por teclado y otras funciones de cuadro de diálogo, el bucle de mensajes del cuadro de diálogo debe llamar a la función IsDialogMessage .

Ejemplos

Para obtener un ejemplo, vea Crear un cuadro de diálogo Modeless.

Nota

El encabezado winuser.h define CreateDialog como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutral de codificación con código que no es neutral de codificación puede dar lugar a errores de coincidencia que dan lugar a errores de compilación o tiempo de ejecución. Para obtener más información, vea Convenciones para prototipos de función.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado winuser.h (incluir Windows.h)
Library User32.lib
Archivo DLL User32.dll

Consulte también

Conceptual

CreateDialogIndirect

CreateDialogIndirectParam

CreateDialogParam

CreateWindowEx

DestroyWindow

Cuadros de diálogo

Cuadro de diálogo

DialogProc

IsDialogMessage

Referencia

ShowWindow

WM_INITDIALOG

WM_SETFONT