Case 1
$Anzahl = GUICtrlRead($Input1)
$Basiszeit = GUICtrlRead($Input2)
$MaxVarianz = GUICtrlRead($Input3)
guICtrlSetData($lbl_Anzahl,"Anzahl Läufe: " & $Anzahl)
guICtrlSetData($lbl_Basiszeit,"Basiszeit: " & $Basiszeit)
;if $count <= $Anzahl Then
$count = $count +1
$VarianzVoll = Random (300, $MaxVarianz,0)
$Varianz = Round($VarianzVoll,3)
$Gesamtzeit = $Basiszeit + $Varianz
Sleep ($Gesamtzeit)
guICtrlSetData($lbl_count,"Versuche bisher: " & $count)
guICtrlSetData($lbl_Gesamtzeit,"Gesamtzeit: " & $Gesamtzeit)
guICtrlSetData($lbl_Varianz,"Varianz (größer 300): " & $Varianz)
if $msg = $GUI_EVENT_CLOSE then
Exit
EndIf
if $msg = $btn_Stopp Then
$zaehler = 0
$count = $Anzahl
EndIf
If $count = $Anzahl Then
$zaehler = 0
EndIf
;Endif
Alles anzeigen
Hallo zusammen,
ich bin ein vollkommener Neuling und hab bei nem Programm, das ich mir zusammen gewurschtelt hab ein Problem. Dieser Case fall 1 läuft wie eine Schleife durch und macht
immer eine bestimmte Zeit Pause. Die Schleife wird solange durchlaufen bis der vorhereingestellte Wert einer Variable ($Anzahl) erreicht ist. Jetzt möchte ich allerdings die schleife schon
vorher unterbrechen z.B wenn man das GUI schließt oder den stopp Knopf drückt. In meinem Programm geht das aber nicht. Läuft die schleife und ich betätige den stopp Knopf passiert gar nichts.
Eigentlich sollte das Programm in einen andern case Schritt springen ($zaehler =0). Betätige ich das „X“ passiert zunächst auch nichts, erst wenn alle Durchläufe vorbei sind geht dann das
Fenster zu wie ein quasi „ gespeichertes“ Kommando. Die schleife hört jedoch mit dem Zustand $count = § Anzahl auf also wenn ich weder stopp noch das "x" drücke. Die zeile ;if $count <= $Anzahl Then brauch ich nicht.
Mir kommst so vor als würden die Befehle $msg = $btn_Stopp und $msg = $GUI_EVENT_CLOSE erst bearbeitet werden wenn $count = $Anzahl eintrifft. Irgendwie muss ich
doch vorher aus dem case schritt aussteigen können.
Ich danke schon mal im voraus.
Gruß
J.K.