Create a Bitmap object from a bitmap handle
#include <GDIPlus.au3>
_GDIPlus_BitmapCreateFromHBITMAP ( $hBitmap [, $hPal = 0] )
$hBitmap | Handle to a HBITMAP |
$hPal | [optional] Handle to a HPALETTE |
Success: | a handle to a Bitmap object. |
Failure: | 0 and sets the @error flag to non-zero, @extended may contain GPSTATUS error code ($GPIP_ERR* see GPIPlusConstants.au3). |
When you are done with the Bitmap object, call _GDIPlus_BitmapDispose() to release the resources.
Search GdipCreateBitmapFromHBITMAP in MSDN Library.
#include <GDIPlus.au3>
#include <GUIConstantsEx.au3>
#include <ScreenCapture.au3>
#include <WinAPIHObj.au3>
Example()
Func Example()
Local $hGUI, $hBMP, $hBitmap, $hGraphic
; Capture upper left corner of screen
$hBMP = _ScreenCapture_Capture("", 0, 0, 400, 300)
; Create GUI
$hGUI = GUICreate("GDI+", 400, 300)
GUISetState(@SW_SHOW)
; Initialize GDI+ library
_GDIPlus_Startup()
; Draw bitmap to GUI
$hBitmap = _GDIPlus_BitmapCreateFromHBITMAP($hBMP)
$hGraphic = _GDIPlus_GraphicsCreateFromHWND($hGUI)
_GDIPlus_GraphicsDrawImage($hGraphic, $hBitmap, 0, 0)
; Clean up resources
_GDIPlus_GraphicsDispose($hGraphic)
_GDIPlus_BitmapDispose($hBitmap)
_WinAPI_DeleteObject($hBMP)
; Shut down GDI+ library
_GDIPlus_Shutdown()
; Loop until the user exits.
Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE
EndFunc ;==>Example