BitBlt
von ActiveVB-Team
Deklaration
Declare Function BitBlt Lib "gdi32" ( _ ByVal hDCDest As Long, _ ByVal XDest As Long, _ ByVal YDest As Long, _ ByVal nWidth As Long, _ ByVal nHeight As Long, _ ByVal hDCSrc As Long, _ ByVal XSrc As Long, _ ByVal YSrc As Long, _ ByVal dwRop As Long) As LongWeitere Informationen zur Verwendung dieser Funktion finden sie u.U. auch im Artikel BitBlt des API-Wikis.
BitBlt ist die Standardfunktion für die Anzeige von Bitmaps. Sie kopiert eine Bitmap aus einem Speicher-Gerätekontext in einen anderen Gerätekontext, etwa in den eines Fensters. Die Bitmap muß zunächst in einem Speicher-Gerätekontext selektiert werden, der mit CreateCompatibleDC erzeugt wird.
Die Bitmap kann unter Verwendung der Rasteroperationen mit dem existierenden Hintergrund kombiniert werden. Nicht alle Geräte unterstützen BitBlt. Anhand des RASTERCAPS-Rückgabewerts aus der Funktion GetDeviceCaps können Sie feststellen, ob BitBlt-Operationen unterstützt werden.
Parameter | |
---|---|
hDCDest | HDC: Der Gerätekontext-Handle für die Bitmap |
XDest | Die logische x-Koordinate der oberen linken Ecke des Ziel-Rechtecks |
YDest | Die logische y-Koordinate der oberen linken Ecke des Ziel-Rechtecks |
nWidth | Die Breite des Quell- und Zielrechtecks, angegeben in logischen Einheiten |
nHeight | Die Höhe des Quell- und Zielrechtecks, angegeben in logischen Einheiten |
hDCSrc | DerGerätekontext aus dem die Bitmap kopiert wird. Dabei handelt es sich normalerweise um ein Speicher-Gerätekontext, der mit CreateCompatibleDC erzeugt wurde. |
XSrc | Die logische x-Koordinate der oberen linken Ecke des Quell-Rechtecks |
YSrc | Die logische y-Koordinate der oberen linken Ecke des Quell-Rechtecks |
dwRop | Der Raster-Operationscode. Diese Codes definieren, wie die Farbdaten des Quell-Rechtecks kombiniert werden, um die endgültige Farbe zu erhalten. Untenstehende Tabelle zeigt einige der gebräuchlisten Raster-Operationscodes |
Tabelle 1
Gängige Rasteroperationscodes [ROPs] für dwRop | |
---|---|
BLACKNESS | Setzt alle Ausgaben auf die Farb, die in der physikalischen Palette den Index 0 hat (für die Standardpalette ist das schwarz) |
DSTINVERT | Invertiert das Zielrechteck |
MERGECOPY | Die Quell- und Ziel-Bitmaps werden durch das Boolesche UND verknüpft. |
MERGEPAINT | Die Quell- und Ziel-Bitmaps werden durch das Boolesche ODER verknüpft. |
NOTSRCCOPY | Invertiert die Quellbitmap und kopiert sie dann aufs Ziel |
NOTSRCERASE | Invertiert das Ergebnis der Kombination von Quell- und Zielbitmap unter Verwendung der booleschen ODER. |
PATCOPY | Kopiert ein Muster aufs Ziel |
PATINVERT | Kombiniert die Ziel-Bitmap unter Verwendung des booleschen XODER mit dem Muster |
PATPAINT | Kombiniert die Farben des Musters mit den Farben des invertierten des invertierten Quellrechtecks, wozu der boolesche ODER-Operator verwendet wird. Das ERgebnis wird mit den Farben der Zielbitmap kombiniert, ebenfalss durch das boolesche ODER |
SRCAND | Kombiniert die Quell- und Zielbitmaps mit dem booleschen UND |
SRCCOPY | Kopiert die Quelle direkt auf das Ziel |
SRCERASE | Kombiniert die invertierten Farben der Ziel-Bitmap mit den Farben der Quell-Bitmap, wozu das boolesche UND verwendet wird |
SRCINVERT | Kombiniert die Quell- und Zielbitmaps mit dem booleschen XODER |
SRCPAINT | Kombiniert die Quell- und Zielbitmaps mit dem booleschen ODER |
SRCWHITENESS | Setzt die Ausgabe auf die Farbe, der in der physikalischen Palette der Index 1 zugeordnet ist (für die Standardpalette ist dies Weiß) |
Tabelle 2
Rückgabewerte | |
---|---|
TRUE | Falls die Funktion erfolgreich ausgeführt werden konnte |
FALSE | Es gab Fehler und die Funktion wurde nicht ausgeführt |
Tabelle 3
Unterstützte Betriebssysteme
Win32s, Windows 95, Windows 98, Windows NT
Verwandte API-Funktionen
CreateCompatibleDC, DeleteObject, LoadBitmap, SelectObject, GetDeviceCaps
Zugehörige Tipps
Zugehörige Microsoft Knowledge Base Artikel
- HOWTO: Create a Setup-Like Status Bar in Visual Basic
- HOWTO: Use Windows BitBlt Function in Visual Basic Application
- HOWTO: Capture Screens of Your Forms (ACC95, ACC97)
- HOWTO: Capture and Print the Screen, a Form or a Window
- HOWTO: Rotate a Bitmap Image in 90-Degree Increments
- HOWTO: Create Your Own Bitmap Object Class
- HOWTO: Capture Screen Shots of Your Forms (ACC2000)
- HOWTO: Create a Transparent Picture For Office CommandBar Buttons