Что нового

PNG картинка в окне

_Lexa98_

Осваивающий
Сообщения
551
Репутация
25
Как сделать PNG картинку в окне?
 

Zaramot

I ♥ AutoIt
Сообщения
1 160
Репутация
658
Легко :smile::
Код:
#include <Constants.au3>
#include <GDIPlus.au3>
#include <WinAPI.au3>

Global Const $STM_SETIMAGE = 0x172

$PngFile = @ScriptDir & '\Russia.png'

$hGUI = GUICreate("Test")
$Pic = GUICtrlCreatePic("", 80, 80, 128, 128)
_SetPNGIntoPicControl($Pic, $PngFile)
GUISetState()

While True
    $msg = GUIGetMsg()
    Switch $msg
        Case -3
            Exit
    EndSwitch
WEnd

Func _SetPNGIntoPicControl($iPic, $sPNGFile)
    _GDIPlus_Startup()
    Local $hImage = _GDIPlus_ImageLoadFromFile($sPNGFile)
    Local $hBitmap = _GDIPlus_BitmapCreateHBITMAPFromBitmap($hImage)
    _WinAPI_DeleteObject(GUICtrlSendMsg($iPic, $STM_SETIMAGE, $IMAGE_BITMAP, $hBitmap))
    _WinAPI_DeleteObject($hBitmap)
    _GDIPlus_ImageDispose($hImage)
    _GDIPlus_Shutdown()
EndFunc


PNG:
 
Автор
_Lexa98_

_Lexa98_

Осваивающий
Сообщения
551
Репутация
25
Спасибо
А как сделать окно прозрачным?
А то получается так:



Добавлено:
Сообщение автоматически объединено:

А не всё не надо! ;D
Надо так:
Код:
GUICreate("PET", $w, $h, 0, 0, $WS_POPUP, BitOr($WS_EX_LAYERED,$WS_EX_TOPMOST,$WS_EX_TOOLWINDOW))
GUISetBkColor ( 0x000000 )
 
Верх