Compartir a través de


CWnd::OnNcCalcSize

El marco de trabajo llama a esta función miembro al tamaño y la posición del área cliente necesita ser calculado.

afx_msg void OnNcCalcSize(
   BOOL bCalcValidRects,
   NCCALCSIZE_PARAMS* lpncsp 
);

Parámetros

  • bCalcValidRects
    Especifica si la aplicación debe especificar qué parte del área cliente contiene información válida.Windows copiará información válida al área especificada dentro de la nueva área de cliente.Si este parámetro es TRUE, la aplicación debe especificar qué parte del área cliente es válida.

  • lpncsp
    Señala una estructura de datos de NCCALCSIZE_PARAMS que contiene información una aplicación puede utilizar para calcular el nuevo tamaño y posición del rectángulo de CWnd (área cliente incluidos, los bordes, leyenda, las barras de desplazamiento, etc.).

Comentarios

Procesar este mensaje, una aplicación puede controlar el contenido del área de cliente de la ventana cuando el tamaño o posición de la ventana cambia.

Independientemente del valor de bCalcValidRects, el primer rectángulo en la matriz especificada por el miembro de estructura de rgrc de la estructura de NCCALCSIZE_PARAMS contiene las coordenadas de la ventana.Para una ventana secundaria, las coordenadas son relativas al área cliente de la ventana primaria.Para las ventanas de nivel superior, las coordenadas son las coordenadas de la pantalla.Una aplicación debe modificar el rectángulo de rgrc[0] para reflejar el tamaño y la posición del área cliente.

Los rectángulos de rgrc[1] y de rgrc[2] sólo son válidos si bCalcValidRects es TRUE.En este caso, el rectángulo de rgrc[1] contiene las coordenadas de la ventana antes de que se haya movido o cambiar su tamaño.El rectángulo de rgrc[2] contiene las coordenadas del área de cliente de la ventana antes de que la ventana se moviera.Todas las coordenadas son relativas a la ventana primaria o mostrar.

La implementación predeterminada calcula el tamaño del área cliente basada en las características de ventana (presencia de barras de desplazamiento, de menú, etc.), y coloca el resultado en lpncsp.

[!NOTA]

Esta función miembro llaman el marco para que la aplicación pueda controlar un mensaje de Windows.Los parámetros pasados a la función reflejan los parámetros recibidos por el marco cuando el mensaje se recibió.Si llama a la implementación de la clase base de esta función, esa implementación utilizará los parámetros pasados originalmente con el mensaje y no los parámetros que se proporciona a la función.

Requisitos

encabezado: afxwin.h

Vea también

Referencia

Clase de CWnd

Gráfico de jerarquía

WM_NCCALCSIZE

CWnd::MoveWindow

CWnd::SetWindowPos