Compartir a través de


Función DefMDIChildProcA (winuser.h)

Proporciona procesamiento predeterminado para cualquier mensaje de ventana que el procedimiento de ventana de una ventana secundaria de interfaz de varios documentos (MDI) no procesa. Se debe pasar un mensaje de ventana no procesado por el procedimiento de ventana a la función DefMDIChildProc , no a la función DefWindowProc .

Sintaxis

LRESULT LRESULT DefMDIChildProcA(
  [in] HWND   hWnd,
  [in] UINT   uMsg,
  [in] WPARAM wParam,
  [in] LPARAM lParam
);

Parámetros

[in] hWnd

Tipo: HWND

Identificador de la ventana secundaria MDI.

[in] uMsg

Tipo: UINT

Mensaje que se va a procesar.

[in] wParam

Tipo: WPARAM

Información adicional específica del mensaje.

[in] lParam

Tipo: LPARAM

Información adicional específica del mensaje.

Valor devuelto

Tipo: LRESULT

El valor devuelto especifica el resultado del procesamiento del mensaje y depende del mensaje.

Comentarios

La función DefMDIChildProc supone que la ventana primaria de la ventana secundaria MDI identificada por el parámetro hWnd se creó con la clase MDICLIENT .

Cuando el procedimiento de ventana de una aplicación no controla un mensaje, normalmente pasa el mensaje a la función DefWindowProc para procesar el mensaje. Las aplicaciones MDI usan las funciones DefFrameProc y DefMDIChildProc en lugar de DefWindowProc para proporcionar el procesamiento de mensajes predeterminado. Todos los mensajes que una aplicación normalmente pasaría a DefWindowProc (como mensajes no cliente y el mensaje WM_SETTEXT ) deben pasarse a DefMDIChildProc en su lugar. Además, DefMDIChildProc también controla los siguientes mensajes.

Message Response
WM_CHILDACTIVATE Realiza el procesamiento de activación cuando las ventanas secundarias MDI tienen un tamaño, se mueven o se muestran. Este mensaje debe pasarse.
WM_GETMINMAXINFO Calcula el tamaño de una ventana secundaria MDI maximizada, en función del tamaño actual de la ventana del cliente MDI.
WM_MENUCHAR Pasa el mensaje a la ventana de marco MDI.
WM_MOVE Actualiza las barras de desplazamiento del cliente MDI si están presentes.
WM_SETFOCUS Activa la ventana secundaria si no es la ventana secundaria MDI activa.
WM_SIZE Realiza operaciones necesarias para cambiar el tamaño de una ventana, especialmente para maximizar o restaurar una ventana secundaria de MDI. Si no se pasa este mensaje a la función DefMDIChildProc , se producen resultados muy no deseados.
WM_SYSCOMMAND Controla los comandos de menú de ventana: SC_NEXTWINDOW, SC_PREVWINDOW, SC_MOVE, SC_SIZE y SC_MAXIMIZE.
 

Nota

El encabezado winuser.h define DefMDIChildProc 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 neutro de codificación con código que no es neutral de codificación puede provocar discrepancias que dan lugar a errores de compilación o en 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 (incluya Windows.h)
Library User32.lib
Archivo DLL User32.dll

Consulte también

Conceptual

DefFrameProc

DefWindowProc

Interfaz de varios documentos

Referencia

WM_CHILDACTIVATE

WM_GETMINMAXINFO

WM_MENUCHAR

WM_MOVE

WM_SETFOCUS

WM_SETTEXT

WM_SIZE

WM_SYSCOMMAND