API-Funktion BeginPaint(...)

Die Funktion BeginPaint(...) bereitet ein Fenster zum Zeichnen vor.

BeginPaint(....) hat folgendes Prototyping:

HDC BeginPaint (HWND hWnd, LPPAINTSTRUCT lpPaint);

Die Parameter haben folgende Bedeutung:

Parameter

Bedeutung

HWND hWnd Fenster-Handle des Fensters, in das gezeichnet werden soll.
LPPAINTSTRUCT lpPaint Zeiger auf eine Struktur vom Typ PAINTSTRUCT, in der die Zeicheninformation abgelegt werden.

Bei erfolgreichem Aufruf der Funktion liefert diese als Returnwert das Device-Context-Handle, das für alle nachfolgenden Zeichenoperationen zu verwenden ist. Im Fehlerfall wird der Wert 0 zurückgeliefert.

Die Funktion BeginPaint(...) darf nur als Reaktion auf eine WM_PAINT Nachricht aufgerufen werden. Falls der Fensterhintergrund auch neu gezeichnet werden muss, löst die Funktion eine Nachricht WM_ERASEBKGND aus.

Die Struktur PAINTSTRUCT hat folgenden Aufbau:

typedef struct tagPAINTSTRUCT
{
    HDC  hdc;
    BOOL fErase;
    RECT rcPaint;
    BOOL fRestore;
    BOOL fIncUpdate;
    BYTE rgbReserved[32];
} PAINTSTRUCT;

Das erste Element hdc ist wieder das vorhin erwähnte Handle auf den Device Context und entspricht dem Returnwert der Funktion BeginPaint(...). Das nächste Element fErase gibt an, ob der Fensterhintergrund ebenfalls neu gezeichnet werden muss oder nicht. Danach folgt rcPaint, eine Struktur vom Typ RECT. Sie enthält die Koordinaten innerhalb denen neu gezeichnet werden kann in folgender Form: obere, linke Ecke und untere, rechte Ecke des Zeichenbereichs. Diese Koordinaten werden in Pixel angegeben, relativ zur Client-Area des Fensters. Mehr zu diesen Koordinaten im Kurs unter Darstellen des Fensterinhaltes. Die restlichen Elemente der Struktur sind für WINDOWS reserviert.



Copyright © 2004

Senden Sie Emails mit Fragen oder Kommentaren zu dieser Website an: mailto:info@cpp-tutor.de
 Wolfgang Schröder, Lerchenweg 23, D-72805 Lichtenstein. Tel: +49 7129 6470