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
#include <Constants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
Startmenu()
Func Startmenu()
Local $hMainGUI = GUICreate("Niklas16",1200,800)
$gameszustand= "..\Nik\men1_1_gamesklein.jpg"
$pandazustand= "..\Nik\men1_1_woraufdubock.jpg"
$movieszustand= "..\Nik\men1_1_moviesklein.jpg"
Local $menubackground = GUICtrlCreatePic("..\Nik\men_1_1_background.jpg",-1,-1,1200,800)
GUICtrlSetState(-1, $GUI_DISABLE)
Local $pandakopf = GUICtrlCreatePic($pandazustand , 206,19,745,180)
GUICtrlSetState(-1, $GUI_DISABLE)
Local $gamesbutton = GUICtrlCreatePic($gameszustand , 230,208,391,229)
Local $moviesbutton = GUICtrlCreatePic($movieszustand ,673,339, 322,196)
GUISetState(@SW_SHOW)
Local $aMsg = 0
While 1
$aMsg = GUIGetMsg(1)
Select
Case $aMsg[0] = $gamesbutton
$gameszustand ="..\Nik\men1_1_gamesgrossb.jpg"
GUICtrlSetImage($gamesbutton,$gameszustand)
;Ab hier soll dann ein bestimmter Spiele Ordner geöffnet werden. Das füge ich später noch hinzu.
Sleep(100)
$gameszustand= "..\Nik\men1_1_gamesklein.jpg"
GUICtrlSetImage($gamesbutton,$gameszustand)
Sleep(100)
GUIDelete($menubackground)
Case $aMsg[0] = $moviesbutton
$movieszustand ="..\Nik\men1_1_moviegrossb.jpg"
GUICtrlSetImage($moviesbutton,$movieszustand)
;Ab hier soll dann ein bestimmter Movie Ordner geöffnet werden. Das füge ich später noch hinzu.
Sleep(100)
$movieszustand ="..\Nik\men1_1_moviesklein.jpg"
GUICtrlSetImage($moviesbutton,$movieszustand)
Case $aMsg[0] = $GUI_EVENT_CLOSE And $aMsg[1] = $hMainGUI
ExitLoop
EndSelect
WEnd
EndFunc
Alles 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.
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!