Compartir a través de


Función DefMDIChildProcW (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 DefMDIChildProcW(
  [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. En su lugar, todos los mensajes que una aplicación pasaría a DefWindowProc (como los mensajes no cliente y el mensaje WM_SETTEXT ) deben pasarse a DefMDIChildProc . 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 MDI. Si no se pasa este mensaje a la función DefMDIChildProc , se generan 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 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

DefFrameProc

DefWindowProc

Interfaz de varios documentos

Referencia

WM_CHILDACTIVATE

WM_GETMINMAXINFO

WM_MENUCHAR

WM_MOVE

WM_SETFOCUS

WM_SETTEXT

WM_SIZE

WM_SYSCOMMAND