Erstellt ein Bitmap, welches kompatibel mit der festgelegten Datenstruktur ist
#include <WinAPIGdi.au3>
_WinAPI_CreateCompatibleBitmap ( $hDC, $iWidth, $iHeight )
$hDC | Identifiziert eine Datenstruktur |
$iWidth | legt die Breite des Bitmaps in Pixel fest |
$iHeight | legt die Höhe des Bitmaps in Pixel fest |
Erfolg: | Das Handle des Bitmaps |
Fehler: | 0 |
Wenn man das Bitmap nicht mehr länger benötigt, ist _WinAPI_DeleteObject() aufzurufen um es zu löschen
_WinAPI_CreateSolidBitmap, _WinAPI_DeleteObject
Suche nach CreateCompatibleBitmap in der MSDN Bibliothek.
#include <WinAPI.au3>
#include <WindowsConstants.au3>
$hGUI = GUICreate("test")
;erstellen
$hDC = _WinAPI_GetDC($hGUI)
$hBitmap = _WinAPI_CreateCompatibleBitmap($hDC, 100, 200)
$hBitmapDC = _WinAPI_CreateCompatibleDC($hDC)
_WinAPI_SelectObject($hBitmapDC, $hBitmap)
_WinAPI_ReleaseDC($hGUI, $hDC)
GUISetState()
;in Buffer zeichnen
$tRect = DllStructCreate("long[4]")
DllStructSetData($tRect, 1, 20, 1)
DllStructSetData($tRect, 1, 20, 2)
DllStructSetData($tRect, 1, 60, 3)
DllStructSetData($tRect, 1, 80, 4)
_WinAPI_FillRect($hBitmapDC, DllStructGetPtr($tRect), _WinAPI_GetSysColorBrush(2))
;Zeichnen
$hDC = _WinAPI_GetDC($hGUI)
_WinAPI_BitBlt($hDC, 10, 10, 100, 200, $hBitmapDC, 0, 0, $SRCCOPY)
_WinAPI_ReleaseDC($hGUI, $hDC)
Do
Until GUIGetMsg() = -3
;freigeben
_WinAPI_DeleteDC($hBitmapDC)
_WinAPI_DeleteObject($hBitmap)