_GDIPlus_HICONCreateFromBitmap
Создаёт иконку из объекта bitmap
#Include <GDIP.au3>
_GDIPlus_HICONCreateFromBitmap($hBitmap)
Параметры
$hGraphics | Указатель на объект Bitmap |
Возвращаемое значение
Успех: | Возвращает дескриптор иконки |
Ошибка: | Возвращает 0, либо: |
Если ошибка DllCall(), устанавливает @error и @extended возвращённые вызовом DllCall() | |
$GDIP_STATUS содержит не нулевое значение кода ошибки. |
Примечания
После завершения использования объекта вызовите _WinAPI_DestroyIcon, чтобы освободить ресурсы объектаСм. также
Пример
#include <Constants.au3>
#include <GDIP.au3>
#include <GUIConstantsEx.au3>
#include <ScreenCapture.au3>
#include <StaticConstants.au3>
_Example()
Func _Example()
Local $hGUI, $Label
Local $hBmp, $hBitmap, $hIcon
; Инициализирует библиотеку GDI+
_GDIPlus_Startup()
$hGUI = GUICreate("Создаёт иконку из Bitmap", @DesktopWidth / 3, @DesktopHeight / 3)
$Label = GUICtrlCreateLabel("", 50, 10, 160, 160, $SS_ICON)
GUISetState()
; Делает снимок левой верхней части экрана
$hBmp = _ScreenCapture_Capture("", 0, 0, @DesktopWidth / 4, @DesktopHeight / 4, False)
; Создаёт объект GDI+ Bitmap из объекта GDI Bitmap
$hBitmap = _GDIPlus_BitmapCreateFromHBITMAP($hBmp)
; Создаёт иконку из объекта GDI+ Bitmap
$hIcon = _GDIPlus_HICONCreateFromBitmap($hBitmap)
; Назначает иконку элементу $Label
GUICtrlSendMsg($Label, 370, $IMAGE_ICON, $hIcon) ; STM_SETIMAGE = 370
Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE
; Освобождает ресурсы
_WinAPI_DestroyIcon($hIcon)
_GDIPlus_ImageDispose($hBitmap)
_WinAPI_DeleteObject($hBmp)
; Закрывает библиотеку GDI+
_GDIPlus_Shutdown()
EndFunc