novosibirec |
08-11-2010 12:31 1537514 |
GIF анимация в форме
Ребят! есть такой код! как сделать чтоб анимация проигрывалась, а не была статичной, сохраняя стиль прозрачности!!!!!
Код:
#Include <WindowsConstants.au3>
#include <GUIConstants.au3>
$Form1 = GUICreate("", 116, 108, 750, 1, $WS_POPUP, $WS_EX_LAYERED)
GUICtrlSetBkColor(-1, $GUI_BKCOLOR_TRANSPARENT)
$Pic1 = GUICtrlCreatePic("C:\тест.gif", 0, 0, 116, 108, $WS_EX_LAYERED)
GUISetState(@SW_SHOW)
While 1
WEnd
вот в этом коде они проигрываются но тут нельзя применить стили прозрачности!! ((
Код:
#include <IE.au3>
#Include <WindowsConstants.au3>
#include <GUIConstants.au3>
#Include <WinAPI.au3>
GUICreate("Embedded Web control Test", 640, 580, $WS_POPUP, $WS_EX_LAYERED)
_GUICtrlCreateGif("C:\тест.gif", 116, 108)
GUISetState(@SW_SHOW)
While GUIGetMsg() <> -3
WEnd
Func _GUICtrlCreateGif($sGifFile, $iLeft, $iTop, $iWidth=-1, $iHeight=-1)
Local $iSizes, $oIE, $nGUIActiveX
If ($iWidth = -1 Or $iHeight = -1) And FileGetSize($sGifFile) > 9 Then
$iSizes = FileRead($sGifFile, 10)
If $iWidth = -1 Then $iWidth = Asc(StringMid($iSizes, 8, 1)) * 256 + Asc(StringMid($iSizes, 7, 1))
If $iHeight = -1 Then $iHeight = Asc(StringMid($iSizes, 10, 1)) * 256 + Asc(StringMid($iSizes, 9, 1))
EndIf
$oIE = ObjCreate("Shell.Explorer.2")
$nGUIActiveX = GUICtrlCreateObj($oIE, $iLeft, $iTop, $iWidth, $iHeight)
$oIE.Navigate("about:blank")
While $oIE.Busy
Sleep(1)
WEnd
$oIE.Document.Body.Background = $sGifFile
$oIE.Document.Body.Scroll = "No"
EndFunc
Return $nGUIActiveX
|