Freigeben über


CWnd::BeginPaint

Bereitet CWnd zum Zeichnen vor und füllt eine PAINTSTRUCT Datenstruktur mit Informationen zum Zeichnen aus.

CDC* BeginPaint( 
   LPPAINTSTRUCT lpPaint  
);

Parameter

  • lpPaint
    Zeigt auf PAINTSTRUCT-Struktur, das, Zeichneninformationen abzurufen ist.

Rückgabewert

Identifiziert den Gerätekontext für CWnd. Der Zeiger kann und sollte nicht außerhalb des Rahmens EndPaint temporär gespeichert werden.

Hinweise

Die Farbenstruktur enthält eine RECT Datenstruktur, die das kleinste Rechteck hat, das vollständig das UpdatePanel und ein Flag beinhaltet, das angibt, ob der Hintergrund gelöscht wurde.

Das UpdatePanel wird durch NULL, InvalidateRect festgelegt, oder InvalidateRgn-Memberfunktionen und vom System, nachdem es sortiert, verschiebt, erstellt, führt einen Bildlauf durch oder führt einen anderen Vorgang aus, der den Clientbereich beeinflusst. Wenn der Aktualisierungsbereich zum Löschen markiert ist, sendet eine Meldung BeginPaintWM_ONERASEBKGND.

Rufen Sie die BeginPaint-Memberfunktion außer nicht als Reaktion auf eine WM_PAINT Meldung auf. Jeder Aufruf der Memberfunktion BeginPaint muss einen entsprechenden Aufruf der Memberfunktion EndPaint haben. Wenn die Einfügemarke im zu zeichnende Bereich, ist, werden die BeginPaint-Memberfunktion automatisch die Einfügemarke aus, um sie an gelöscht werden.

Beispiel

// Use BeginPaint and EndPaint when responding to WM_PAINT message 
// An alternative method is to use CPaintDC in place of  
// BeginPaint and EndPaint 
void CMdiView::OnPaint() 
{
   PAINTSTRUCT ps;
   CDC* pDC = BeginPaint(&ps);

   pDC->Rectangle(CRect(0, 0, 100, 100));

   EndPaint(&ps);

   // Do not call CView::OnPaint() for painting messages
}

Anforderungen

Header: afxwin.h

Siehe auch

Referenz

CWnd-Klasse

Hierarchiediagramm

CWnd::EndPaint

CWnd::Invalidate

CWnd::InvalidateRgn

BeginPaint

CPaintDC-Klasse