Hallo zusammen,
ja, ich weiss, das wurde schon mal behandelt und gefragt. Trotzdem kriege ich es nicht hin.
Ich habe eine GUI. Irgendwann wird dann mal ein Button eingeblendet der in einer 2. GUI ein "Hilfe"-Bild anzeigen soll.
Das zweite GUI kommt auch, aber es lässt sich nicht schliessen. Auch das erste lässt sich dann nicht mehr schliessen.
Ich arbeite mit GUISetOnEvent.
Für das 1. GUI funktioniert das wunderbar, solange das 2. nicht geöffnet ist.
Das 2. GUI habe ich aber nur vom 1. kopiert und wenig geändert:
Spoiler anzeigen
Dim $CloseGUI2 = False, $hGUI
opt("GUIOnEventMode", 1) ;Enable events on GUI
Func SecondGUI()
Local $hGUI2, $msg
$hGUI2 = GUICreate("Umbauhilfe", 700, 700, 10, 10) ;Create GUI
GUICtrlCreatePic("Testbild.jpg",0,0,700,700)
GUISwitch($hGUI2)
GUISetState() ; Display the GUI
GUISetOnEvent(-3,"CloseSecondGUI",$hGUI2)
While Not $CloseGUI2
Sleep(100)
WEnd
GUIDelete($hGUI2)
GUISwitch($hGUI)
$CloseGUI2 = False
EndFunc
Func CloseSecondGUI()
$CloseGUI2 = True
EndFunc
Leider kann ich nicht das ganze Programm hier mitgeben, da es viel zu gross zum analysieren wäre...
Vielleicht findet ja jemand einen Denkfehler oder kann mir Tipps geben, wonach ich suchen könnte!
Wenn ich in der Funktion SecondGUI() die Option Event auf 0 stelle (opt("GUIOnEventMode", 0))
dann kann ich ganz normal mit GUIGetMsg() das schliessen abfragen. Dann geht es!
Am Schluss stelle ich natürlich dann die Events wieder ein.
Aber das müsste doch auch mit den Event klappen?
Grüsse
Veronesi