Grafikobjekte

Windows bietet eine Reihe von Zeichentools an, die in Gerätekontexten verwendet werden können. Es bietet Stifte zum Zeichnen von Linien, Pinsel zum Auffüllen von Innenbereichen und Schriftarten zum Zeichnen von Text. MFC stellt Grafikobjektklassen bereit, die den Zeichentools in Windows ähneln. In der folgenden Tabelle werden die verfügbaren Klassen und die entsprechenden Windows-GDI-Handletypen (Graphics Device Interface) gezeigt.

Hinweis

Weitere Informationen finden Sie in der GDI+ SDK-Dokumentation.

Dieser Artikel beschreibt die Verwendung von diesen Grafikobjektklassen:

Klassen für Windows-GDI-Objekte

Klasse Windows-Handletypen
CPen HPEN
CBrush HBRUSH
CFont HFONT
CBitmap HBITMAP
CPalette HPALETTE
CRgn HRGN

Hinweis

Die Klasse CImage bietet erweiterte Bitmapunterstützung.

Jede Grafikobjektklasse in der Klassenbibliothek verfügt über einen Konstruktor, mit dem Sie grafische Objekte dieser Klasse erstellen können. Diese müssen Sie anschließend mit der entsprechenden „create“-Funktion wie CreatePen initialisieren.

Jede Grafikobjektklasse in der Klassenbibliothek verfügt über einen „cast“-Operator, der ein MFC-Objekt zum zugehörigen Windows-Handle umwandelt. Das resultierende Handle ist gültig, bis das zugeordnete Objekt es trennt. Verwenden Sie die Memberfunktion des Detach Objekts, um das Handle zu trennen.

Im folgenden Code wird ein CPen-Objekt zu einem Windows-Handle umgewandelt:

CPen myPen;
myPen.CreatePen(PS_COSMETIC, 1, RGB(255, 255, 0));
HPEN hMyPen = (HPEN)myPen;

So erstellen Sie ein Grafikobjekt in einem Gerätekontext

  1. Definieren Sie ein Grafikobjekt im Stapelrahmen. Initialisieren Sie das Objekt mit der „type“-spezifischen „create“-Funktion wie CreatePen. Initialisieren Sie alternativ das Objekt im Konstruktor. Sehen Sie sich die Diskussion über die einstufige und zweistufige Erstellung an, die Beispielcode bereitstellt.

  2. Wählen Sie das Objekt im aktuellen Gerätekontext aus, und speichern Sie das alte Grafikobjekt, das zuvor ausgewählt wurde.

  3. Wenn Sie mit dem aktuellen Grafikobjekt fertig sind, wählen Sie das alte Grafikobjekt zurück im Gerätekontext aus, um dessen Status wiederherzustellen.

  4. Ermöglichen Sie dem „frame“-zugewiesenen Grafikobjekt, automatisch gelöscht zu werden, wenn der Bereich verlassen wird.

Hinweis

Wenn Sie ein Grafikobjekt wiederholt verwenden, können Sie es einmal zuordnen und es im Gerätekontext auswählen, sobald es benötigt wird. Stellen Sie sicher, ein derartiges Objekt zu löschen, wenn Sie es nicht mehr benötigen.

Was möchten Sie mehr über

Siehe auch

Fensterobjekte