MsgBox Button "Wiederholen" -Script von vorne

  • Hallo,
    ich habe ,mich seit kurzem mit AutoIT beschäftigt. Und annähern nach einem TuT einen "Rechner" erstellt. Am ende kommt dann das Fenster "Das Ergebnis ist..". Man hat dann die auswahl zwischen Wiederholen und Abbrechen. Bei Wiederholen soll dann halt das Script wieder von vorne losgehen. Jedoch bekomme ich das mit der Schleife noch nicht hin. Und da wollte ich mal fragen, wer mir dabei helfen könnte
    Danke schonmal :)

    Spoiler anzeigen
    [autoit]

    Dim $erstezahl, $zweitezahl, $ergebnis, $auswahl

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

    $auswahl = InputBox("Auswählen:", _
    "Was möchtest du amchen?" & _
    @LF & "Addieren (1)" & _
    @LF & "Subtrahieren (2)" & _
    @LF & "Multiplizieren (3)" & _
    @LF & "Dividieren (4)", "1")

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

    Switch $auswahl
    case 1
    _add()
    case 2
    _sub()
    case 3
    _multi()
    case 4
    _divi()
    case Else
    MsgBox(0, "Error", "Dies ist eine ungültige Funktion!", 5)
    Exit
    EndSwitch

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

    Func _add()
    $erstezahl = Inputbox("1. Zahl", "Bitte hier die erste Zahl eingeben.")
    $zweitezahl = Inputbox("2. Zahl", "Bitte hier die zweite Zahl eingeben.")
    $ergebnis = $erstezahl + $zweitezahl
    EndFunc

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

    Func _sub()
    $erstezahl = Inputbox("1. Zahl", "Bitte hier die erste Zahl eingeben.")
    $zweitezahl = Inputbox("2. Zahl", "Bitte hier die zweite Zahl eingeben.")
    $ergebnis = $erstezahl - $zweitezahl
    EndFunc

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

    Func _multi()
    $erstezahl = Inputbox("1. Zahl", "Bitte hier die erste Zahl eingeben.")
    $zweitezahl = Inputbox("2. Zahl", "Bitte hier die zweite Zahl eingeben.")
    $ergebnis = $erstezahl * $zweitezahl
    EndFunc

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

    Func _divi()
    $erstezahl = Inputbox("1. Zahl", "Bitte hier die erste Zahl eingeben.")
    $zweitezahl = Inputbox("2. Zahl", "Bitte hier die zweite Zahl eingeben.")
    $ergebnis = $erstezahl / $zweitezahl
    EndFunc

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

    MsgBox(69, "Ergebnis", "Das Ergebnis ist: " & $ergebnis &".")

    [/autoit]

    MfG Psyrok

    Einmal editiert, zuletzt von Psyrok (27. Dezember 2010 um 17:48)

  • So?

    Spoiler anzeigen
    [autoit]

    Dim $erstezahl, $zweitezahl, $ergebnis, $auswahl

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

    While True
    $auswahl = InputBox("Auswählen:", _
    "Was möchtest du amchen?" & _
    @LF & "Addieren (1)" & _
    @LF & "Subtrahieren (2)" & _
    @LF & "Multiplizieren (3)" & _
    @LF & "Dividieren (4)", "1")

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

    Switch $auswahl
    case 1
    _add()
    case 2
    _sub()
    case 3
    _multi()
    case 4
    _divi()
    case Else
    MsgBox(0, "Error", "Dies ist eine ungültige Funktion!", 5)
    Exit
    EndSwitch
    If MsgBox(69, "Ergebnis", "Das Ergebnis ist: " & $ergebnis &".") <> 4 Then Exit
    WEnd

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

    Func _add()
    $erstezahl = Inputbox("1. Zahl", "Bitte hier die erste Zahl eingeben.")
    $zweitezahl = Inputbox("2. Zahl", "Bitte hier die zweite Zahl eingeben.")
    $ergebnis = $erstezahl + $zweitezahl
    EndFunc

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

    Func _sub()
    $erstezahl = Inputbox("1. Zahl", "Bitte hier die erste Zahl eingeben.")
    $zweitezahl = Inputbox("2. Zahl", "Bitte hier die zweite Zahl eingeben.")
    $ergebnis = $erstezahl - $zweitezahl
    EndFunc

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

    Func _multi()
    $erstezahl = Inputbox("1. Zahl", "Bitte hier die erste Zahl eingeben.")
    $zweitezahl = Inputbox("2. Zahl", "Bitte hier die zweite Zahl eingeben.")
    $ergebnis = $erstezahl * $zweitezahl
    EndFunc

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

    Func _divi()
    $erstezahl = Inputbox("1. Zahl", "Bitte hier die erste Zahl eingeben.")
    $zweitezahl = Inputbox("2. Zahl", "Bitte hier die zweite Zahl eingeben.")
    $ergebnis = $erstezahl / $zweitezahl
    EndFunc

    [/autoit]
  • Hallo Psyrok,

    herzlich willkommen im Forum und viel Spass mit AutoIt.

    Hier kannst du dir die Hilfe herunterladen.
    Hier gibt es ein AutoIt-Tutorial: http://wiki.autoit.de/wiki/index.php/TutorialSehr hilfreich ist auch das Buch von peethebee

    und jetzt zu deinem Probelm: Do .. Until - Schleife lösst es auch:

    Spoiler anzeigen
    [autoit]

    Dim $erstezahl, $zweitezahl, $ergebnis, $auswahl

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

    Do
    $auswahl = InputBox("Auswählen:", _
    "Was möchtest du amchen?" & _
    @LF & "Addieren (1)" & _
    @LF & "Subtrahieren (2)" & _
    @LF & "Multiplizieren (3)" & _
    @LF & "Dividieren (4)", "1")

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

    Switch $auswahl
    Case 1
    _add()
    Case 2
    _sub()
    Case 3
    _multi()
    Case 4
    _divi()
    Case Else
    MsgBox(0, "Error", "Dies ist eine ungültige Funktion!", 5)
    Exit
    EndSwitch
    Until MsgBox(36, Default, "Ergebnis ist: " & $ergebnis, "weitermachen?") = 7

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

    Func _add()
    $erstezahl = InputBox("1. Zahl", "Bitte hier die erste Zahl eingeben.")
    $zweitezahl = InputBox("2. Zahl", "Bitte hier die zweite Zahl eingeben.")
    $ergebnis = $erstezahl + $zweitezahl
    EndFunc ;==>_add

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

    Func _sub()
    $erstezahl = InputBox("1. Zahl", "Bitte hier die erste Zahl eingeben.")
    $zweitezahl = InputBox("2. Zahl", "Bitte hier die zweite Zahl eingeben.")
    $ergebnis = $erstezahl - $zweitezahl
    EndFunc ;==>_sub

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

    Func _multi()
    $erstezahl = InputBox("1. Zahl", "Bitte hier die erste Zahl eingeben.")
    $zweitezahl = InputBox("2. Zahl", "Bitte hier die zweite Zahl eingeben.")
    $ergebnis = $erstezahl * $zweitezahl
    EndFunc ;==>_multi

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

    Func _divi()
    $erstezahl = InputBox("1. Zahl", "Bitte hier die erste Zahl eingeben.")
    $zweitezahl = InputBox("2. Zahl", "Bitte hier die zweite Zahl eingeben.")
    $ergebnis = $erstezahl / $zweitezahl
    EndFunc ;==>_divi

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

    mfg autoBert