Freigeben über


CWnd::OnNcCalcSize

Das Framework ruft diese Memberfunktion auf, wenn die Größe und die Position des Clientbereichs abgeleitet werden muss.

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

Parameter

  • bCalcValidRects
    Gibt an, ob die Anwendung angeben soll, welcher Teil des Clientbereichs gültige Informationen enthält.Windows kopiert die gültigen Informationen zum angegebenen Bereich im neuen Clientbereichs.Wenn dieser Parameter TRUE ist, sollte die Anwendung angeben, welcher Teil des Clientbereichs gültig ist.

  • lpncsp
    Zeigt auf eine NCCALCSIZE_PARAMS Datenstruktur, die Informationen enthält, die, eine Anwendung verwenden kann, um die neue Größe und Position des Rechtecks CWnd zu berechnen (einschließlich Clientbereich, Rahmen, Beschriftung, Bildlaufleisten., usw.).

Hinweise

Mithilfe dieser Meldung verarbeitet, kann eine Anwendung den Inhalt des Clientbereichs des Fensters steuern, wenn die Größe oder die Position des Fensters.

Unabhängig vom Wert von bCalcValidRects, enthält das erste Rechteck im Array, das vom rgrc-Strukturmember der NCCALCSIZE_PARAMS-Struktur angegeben wird, die Koordinaten des Fensters.Für ein untergeordnetes Fenster sind Koordinaten relativ zum Clientbereich des übergeordneten Fensters.Für Fenster der obersten Ebene sind Koordinaten Bildschirmkoordinaten.Eine Anwendung sollte das rgrc[0] Rechteck ändern, um die Größe und die Lage des Clientbereichs widerzuspiegeln.

Die rgrc[1] und rgrc[2] Rechtecke sind nur gültig, wenn bCalcValidRectsTRUE ist.In diesem Fall enthält das rgrc[1] Rechteck die Koordinaten des Fensters, bevor es verschoben oder Größe geändert wurde.Das rgrc[2] Rechteck enthält die Koordinaten des Clientbereichs des Fensters, bevor das Fenster verschoben wurde.Alle Koordinaten sind relativ zum übergeordneten Fenster oder dem Bildschirm.

Die Standardimplementierung berechnet die Größe des Clientbereichs auf Grundlage der Fenstereigenschaften (Vorhandensein von Bildlaufleisten, von Menü, usw.) und die Stellen das Ergebnis in lpncsp.

HinweisHinweis

Diese Memberfunktion wird vom Framework aufgerufen, um die Anwendung zu ermöglichen, eine Windows-Meldung zu bearbeiten.Die Parameter, die an die Funktion übergeben werden, geben die Parameter, die vom Framework empfangen werden, als die Nachricht empfangen wurde.Wenn Sie die Basisklassenimplementierung dieser Funktion aufrufen, verwendet diese Implementierung die Parameter, die mit der Meldung übergeben werden und nicht die Parameter, die an die Funktion bereitstellen.

Anforderungen

Header: afxwin.h

Siehe auch

Referenz

CWnd-Klasse

Hierarchien-Diagramm

WM_NCCALCSIZE

CWnd::MoveWindow

Problembehandlung