(Not IsNumber($eingabe)) geht nicht

  • Hi,

    Wieso wird hierbei immer nur Fehler keine Zahl ausgegeben obwohl ich eine Zahl eintrage ?


    [autoit]

    While 1
    $eingabe = inputbox("Alter", "Bitte gib dein Alter hier ein")
    If (Not IsNumber($eingabe)) Then
    MsgBox(0,"","Fehler, das ist keine Zahl")
    Exit
    Elseif
    $eingabe > 100 Then
    $msg = MsgBox(36,"Warnung","So alt bist du also ?" & $eingabe & "Jahre also")
    Else
    MsgBox(64,"","Du bist also" & $eingabe & "Jahre alt")
    Exit
    EndIf

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

    If $msg = 6 Then
    Exit
    Else
    EndIf

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

    WEnd

    [/autoit]
  • Die InputBox gibt immer einen Srting zurück. daher finktioniert IsNumber nicht. Ich denke, du suchst eher

    [autoit]

    StringIsDigit

    [/autoit]
  • Spoiler anzeigen
    [autoit]

    While 1
    $eingabe = inputbox("Alter", "Bitte gib dein Alter hier ein")
    If Not IsNumber(Execute ($eingabe4)) Then
    MsgBox(0,"","Fehler, das ist keine Zahl")
    Exit
    Elseif $eingabe > 100 Then
    $msg = MsgBox(36,"Warnung","So alt bist du also ?" & $eingabe & "Jahre also")
    Else
    MsgBox(64,"","Du bist also" & $eingabe & "Jahre alt")
    Exit
    EndIf

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

    If $msg = 6 Then
    Exit
    Else
    EndIf

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

    WEnd

    [/autoit]


    Das liegt daran, dass das Input die Zeichen die man Eingibt immer in "" zurückgegeben wird, das muss man also ändern!

    EDIT:
    Zu spät :|

    mfg. Jam00