Flackern bei GUICtrlSetImage

  • Heyho,
    Seit etwas mehr als drei Stunden durchforste ich das Web nach einer Lösung für mein Problem und bin auf keine (für mich verstädnliche) Lösung des Problems gestoßen.
    Ich hoffe ihr könnt mir mit dem folgenden Problem weiterhelfen:

    Zum Geburtstag eines Freundes möchte ich ihm eine kleine Spiele und Filmesammlung schenken, doch um nicht nur einen USB-Stick mit Ordnern zu verschenken wollte ich ihm ein kleines Programm schreiben welches das ganze etwas "aufpeppt".
    Also fing ich, mit meinen sehr groben autoit Kenntnissen, an das folgende Programm zu schreiben:

    Spoiler anzeigen


    Dieses Programm enthält zwei Bilder, welche als Buttons fungieren sollen.
    Drückt man einen dieser Buttons wir dieser Button verändert und zeigt ein anderes Bild an.
    Dummerweise flackert dieser Wechsel fast immer. :cursing:
    Mit flackern meine ich, dass der weiße Hintergund des $hMainGUI kurz zum Vorschein kommt und keinen "fließenden" Übergang ermöglicht.
    Wie schaffe ich es, dass dieser weiße Hintergund nicht erscheint?

    Falls ihr das Programm mal in Aktion austesten/anschauen wollt: Download

    Ich bedanke mich schon einmal im Vorraus für eure Hilfe.

    Mfg,
    Maddin

    P.S.: Je verständlicher und einfacher die Lösung, desto mehr freue ich mich! :thumbup:

    Einmal editiert, zuletzt von Maddin (22. November 2015 um 17:59)

  • Ich weiß jetzt nicht genau, warum es bei dir flackert, aber wie wärs, wenn du einfach ein 2tes bild dahinter legst, welches die gleichen Bilder anzeigt, sodass beim wechsel statt des weißen Hintergrundes das andere Bild zu sehen ist. Das sollte dementsprechend erst später wechseln, also ne Funktion für den Wechsel schreiben und mit adlibregister() später wechseln lassen (adlibregister, weil ein sleep die gui zum hängen bringt). Denke, 1000 dürfte dort reichen. in der adlibregister funktion dann aber auch wieder adlibunregister benutzen, damit die funktion nicht die ganze zeit aufgerufen wird.
    Vielleicht hat ja noch jemand eine einfachere Lösung :)