Freigeben über


CWnd::OnPaint

Das Framework ruft diese Memberfunktion auf, wenn Windows oder eine Anwendung einen anfordernden, einen Teil des Anwendungsfensters neu zu zeichnen.

afx_msg void OnPaint( );

Hinweise

Die WM_PAINT Meldung gesendet wird, wenn die UpdateWindow oder RedrawWindow-Memberfunktion aufgerufen wird.

Ein Fenster empfängt möglicherweise interne Zeichenmeldungen aufgrund des Aufrufens der RedrawWindow-Memberfunktion mit dem RDW_INTERNALPAINT-Flagssatz. In diesem Fall verfügt das Fenster möglicherweise kein UpdatePanel. Eine Anwendung sollte die GetUpdateRect-Memberfunktion aufrufen, um zu bestimmen, ob das Fenster einen Aktualisierungsbereich verfügt. Wenn GetUpdateRect 0 zurückgibt, sollte die Anwendung die BeginPaint und EndPaint keine Memberfunktionen aufrufen.

Es liegt in der Verantwortung einer Anwendung, für die ein internes neu zu oder Aktualisieren sicherzustellen, indem es die internen Datenstrukturen für jede WM_PAINT Meldung angesehen, da eine WM_PAINT Meldung möglicherweise durch einen ungültigen Bereich und einen Aufruf der RedrawWindow-Memberfunktion mit dem RDW_INTERNALPAINT-Flagssatz verursacht wurde.

Eine interne WM_PAINT Meldung wird nur einmal durch Windows gesendet. Nachdem eine interne WM_PAINT Nachricht an ein Fenster durch die UpdateWindow-Memberfunktion gesendet wird, werden keine weiteren WM_PAINT Nachrichten gesendet oder übertragen, wenn das Fenster ungültig ist, oder bis die RedrawWindow-Memberfunktion erneut mit dem RDW_INTERNALPAINT-Flagssatz aufgerufen wird.

Informationen zum Rendern eines Bilds in den Dokument/Ansichts-Anwendungen, finden Sie unter CView::OnDraw.

Weitere Informationen zur Verwendung von WM_Paint, finden Sie in den folgenden Themen in Windows SDK:

Anforderungen

Header: afxwin.h

Siehe auch

Referenz

CWnd-Klasse

Hierarchiediagramm

CWnd::BeginPaint

CWnd::EndPaint

CWnd::RedrawWindow

CPaintDC-Klasse

CView::OnDraw