Función IsDialogMessageA (winuser.h)
Determina si un mensaje está pensado para el cuadro de diálogo especificado y, si es así, procesa el mensaje.
Sintaxis
BOOL IsDialogMessageA(
[in] HWND hDlg,
[in] LPMSG lpMsg
);
Parámetros
[in] hDlg
Tipo: HWND
Identificador del cuadro de diálogo.
[in] lpMsg
Tipo: LPMSG
Puntero a una estructura MSG que contiene el mensaje que se va a comprobar.
Valor devuelto
Tipo: BOOL
Si se ha procesado el mensaje, el valor devuelto es distinto de cero.
Si el mensaje no se ha procesado, el valor devuelto es cero.
Comentarios
Aunque la función IsDialogMessage está pensada para cuadros de diálogo modeless, puede usarla con cualquier ventana que contenga controles, lo que permite que las ventanas proporcionen la misma selección de teclado que se usa en un cuadro de diálogo.
Cuando IsDialogMessage procesa un mensaje, comprueba si hay mensajes de teclado y los convierte en selecciones para el cuadro de diálogo correspondiente. Por ejemplo, la tecla TAB, cuando se presiona, selecciona el siguiente control o grupo de controles, y la tecla FLECHA ABAJO, cuando se presiona, selecciona el siguiente control de un grupo.
Dado que la función IsDialogMessage realiza toda la traducción y envío de mensajes necesarios, un mensaje procesado por IsDialogMessage no debe pasarse a la función TranslateMessage o DispatchMessage .
IsDialogMessage envía mensajes WM_GETDLGCODE al procedimiento del cuadro de diálogo para determinar qué claves se deben procesar.
IsDialogMessage puede enviar mensajes DM_GETDEFID y DM_SETDEFID a la ventana. Estos mensajes se definen en el archivo de encabezado Winuser.h como WM_USER y WM_USER + 1, por lo que los conflictos son posibles con mensajes definidos por la aplicación que tienen los mismos valores.
Nota
El encabezado winuser.h define IsDialogMessage 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 |
Conjunto de API | ext-ms-win-ntuser-dialogbox-l1-1-3 (introducido en Windows 10, versión 10.0.14393) |
Consulte también
Conceptual
Referencia