Habe ein Problem bei Matheformeln in einer Gui

  • Hallo,
    kann mir vll. jemand helfen und mir sagen wieso dies hier nicht geht?

    [autoit]


    #include

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

    Opt('MustDeclareVars', 1)
    Example()

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

    Func Example()
    Local $Button_1, $Button_2, $msg
    GUICreate("Flächenberechnungen")

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

    Opt("GUICoordMode", 2)
    $Button_1 = GUICtrlCreateButton("Quadrat", 10, 30, 100)
    $Button_2 = GUICtrlCreateButton("Rechteck", 0, -1)

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

    GUISetState()

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

    While 1
    $msg = GUIGetMsg()
    Select
    Case $msg = $GUI_EVENT_CLOSE
    ExitLoop
    Case $msg = $Button_1
    $Zahl = InputBox("Quadratflächen-Berechnung","Länge/Breite = a bitte angeben. Bei einem Komma bitte . Benutzen ( z.B. 3.5 )")
    $NeueZahl = $Zahl * $Zahl
    MsgBox(0,"Ergebnis:","Die Fläche des Quadrates Beträgt " & $NeueZahl)
    Case $msg = $Button_2
    $Zahl = InputBox("Rechteckflächen-Berechnung","Länge = a bitte angeben. Bei einem Komma bitte . Benutzen ( z.B. 3.5 )")
    $Zahl1 = InputBox("Rechteckflächen-Berechnung","Breite = b bitte angeben. Bei einem Komma bitte . Benutzen ( z.B. 2.5 )")
    $NeueZahl = $Zahl * $Zahl1
    MsgBox(0,"Ergebnis:","Die Fläche des Rechteckes Beträgt " & $NeueZahl)
    EndSelect
    WEnd
    EndFunc

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

    Ps: habe das problem gefunden... lag bei local, sry :/

  • Du hast Opt('MustDeclareVars', 1) gesetzt - warum?
    Nun ist zwar schöner Stil sich zu zwingen unbedingt alle Variablen zu deklarieren aber man muss das dann halt auch einfach durchziehen.
    Also entweder deklarierst du vorher noch alle vorkommenden Variablen (mit Global oder Local - je nach Verwendung) oder du lässt die Option 'MustDeclareVars' weg.

  • Hi,
    wenn es Fragen gibt drücke mal in Scite "Ctrl+F5", dann gibt es Hinweise ! ;)

    Spoiler anzeigen
    [autoit]


    #include <GUIConstantsEx.au3>

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

    Opt('MustDeclareVars', 1)
    Example()

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

    Func Example()
    Local $Button_1, $Button_2, $msg, $Zahl, $Zahl1
    GUICreate("Flächenberechnungen")

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

    Opt("GUICoordMode", 2)
    $Button_1 = GUICtrlCreateButton("Quadrat", 10, 30, 100)
    $Button_2 = GUICtrlCreateButton("Rechteck", 0, -1)

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

    GUISetState()

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

    While 1
    $msg = GUIGetMsg()
    Select
    Case $msg = $GUI_EVENT_CLOSE
    ExitLoop
    Case $msg = $Button_1
    $Zahl = InputBox("Quadratflächen-Berechnung", "Länge/Breite = a bitte angeben. Bei einem Komma bitte . Benutzen ( z.B. 3.5 )")
    MsgBox(0, "Ergebnis:", "Die Fläche des Quadrates Beträgt " & $Zahl * $Zahl & @TAB)
    Case $msg = $Button_2
    $Zahl = InputBox("Rechteckflächen-Berechnung", "Länge = a bitte angeben. Bei einem Komma bitte . Benutzen ( z.B. 3.5 )")
    $Zahl1 = InputBox("Rechteckflächen-Berechnung", "Breite = b bitte angeben. Bei einem Komma bitte . Benutzen ( z.B. 2.5 )")
    MsgBox(0, "Ergebnis:", "Die Fläche des Rechteckes Beträgt " & $Zahl * $Zahl1 & @TAB)
    EndSelect
    WEnd
    EndFunc ;==>Example
    ; Ende

    [/autoit]