Warum bewegt sich meine animierte .gif nicht in meiner GUI?

  • Hallo,

    Ich habe eine Frage

    und zwar habe ich mit Hilfe von GDI+ eine gif-Datei gezeichnet, die sich eigentlich bewegen soll.
    dies tut sie aber nicht. Muss ich irgendwie einen 'Abspielen' Befehl ausführen oder lassen sich mit GDI+ gar keine gif's bewegen?

    Hier zur Veranschaulichung das Script:


    Spoiler anzeigen
    [autoit]

    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    #include <GDIPlus.au3>

    [/autoit] [autoit][/autoit] [autoit]

    Opt("GuiOnEventMode", 1)

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    $GUI1 = GUICreate("Run!", 300, 250, -1, -1)
    GUISetOnEvent($GUI_EVENT_CLOSE, "_ende")

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    _GDIPlus_Startup()
    $Player = _GDIPlus_ImageLoadFromFile(@scriptdir & "\Player.gif")

    [/autoit] [autoit][/autoit] [autoit]

    $Graphic = _GDIPlus_GraphicsCreateFromHWND($GUI1)
    $hBitmap = _GDIPlus_BitmapCreateFromGraphics(300, 250, $Graphic);Buffer erstellen Schritt 1...
    $hBuffer = _GDIPlus_ImageGetGraphicsContext($hBitmap)

    [/autoit] [autoit][/autoit] [autoit]

    GUISetState(@sw_show)

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    _GDIPlus_GraphicsDrawImageRect($hBuffer, $Player, 20, 20, 33, 55)
    _GDIPlus_GraphicsDrawImage($Graphic, $hBitmap, 0, 0)
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    Func _ende()
    Exit
    EndFunc

    [/autoit]


    Vielen Dank im Vorraus,
    Buckiuxx

  • [autoit]


    Func GuiCtrlCreateGif($pic_dir, $left, $up, $right, $down, $border = 0)
    $oIE = ObjCreate("Shell.Explorer.2")
    GUICtrlCreateObj($oIE, $left, $up, $right, $down)
    $oIE.navigate ("about:blank")
    $oIE.document.body.style.border = $border&"px"
    $oIE.document.body.background = $pic_dir
    $oIE.document.body.scroll = "no"
    EndFunc

    [/autoit]