Compartir a través de


Función DialogBoxParamA (winuser.h)

Crea un cuadro de diálogo modal a partir de un recurso de plantilla de cuadro de diálogo. Antes de mostrar el cuadro de diálogo, la función pasa un valor definido por la aplicación al procedimiento del cuadro de diálogo como el parámetro lParam del mensaje de WM_INITDIALOG. Una aplicación puede usar este valor para inicializar controles de cuadro de diálogo.

Sintaxis

INT_PTR DialogBoxParamA(
  [in, optional] HINSTANCE hInstance,
  [in]           LPCSTR    lpTemplateName,
  [in, optional] HWND      hWndParent,
  [in, optional] DLGPROC   lpDialogFunc,
  [in]           LPARAM    dwInitParam
);

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 archivo ejecutable actual.

[in] lpTemplateName

Tipo: LPCTSTR de

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 del cuadro de diálogo o un valor entero que especifica el identificador de recurso de la plantilla del cuadro de diálogo. Si el parámetro especifica un identificador de recurso, su palabra de orden alto debe ser cero y su palabra de orden bajo 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, vea DialogProc.

[in] dwInitParam

Tipo: LPARAM

Valor que se va a pasar al cuadro de diálogo en el parámetro lParam del mensaje de WM_INITDIALOG.

Valor devuelto

Tipo: INT_PTR

Si la función se ejecuta correctamente, el valor devuelto es el valor del parámetro nResult especificado en la llamada a la función EndDialog usada para finalizar el cuadro de diálogo.

Si se produce un error en la función porque el parámetro hWndParent no es válido, el valor devuelto es cero. La función devuelve cero en este caso por motivos de compatibilidad con versiones anteriores de Windows. Si se produce un error en la función por cualquier otro motivo, el valor devuelto es –1. Para obtener información de error extendida, llame a GetLastError.

Observaciones

La función DialogBoxParam usa la función CreateWindowEx para crear el cuadro de diálogo. DialogBoxParam envía un mensaje 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 (independientemente de si la plantilla especifica el estilo WS_VISIBLE), deshabilita la ventana del propietario e inicia su propio bucle de mensajes para recuperar y enviar mensajes para el cuadro de diálogo.

Cuando el procedimiento del cuadro de diálogo llama a la función EndDialog, DialogBoxParam destruye el cuadro de diálogo, finaliza el bucle de mensajes, habilita la ventana del propietario (si se ha habilitado previamente) y devuelve el parámetro nResult especificado por el procedimiento del cuadro de diálogo cuando se llama a EndDialog.

Nota

El encabezado winuser.h define DialogBoxParam 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 Conventions for Function Prototypes.

Requisitos

Requisito Valor
cliente mínimo admitido Windows 2000 Professional [solo aplicaciones de escritorio]
servidor mínimo admitido Windows 2000 Server [solo aplicaciones de escritorio]
de la plataforma de destino de Windows
encabezado de winuser.h (incluya Windows.h)
biblioteca de User32.lib
DLL de User32.dll
conjunto de API de ext-ms-win-ntuser-dialogbox-l1-1-1 (introducido en Windows 8.1)

Consulte también

conceptual de

createWindowEx

cuadros de diálogo

cuadro de diálogo

DialogBoxIndirect

dialogBoxIndirectParam

cuadro de diálogo Proc

endDialog

MAKEINTRESOURCE

de referencia de

WM_INITDIALOG

WM_SETFONT