2 Fragen

  • Ich habe in letzter Zeit angefangen mit AutoIt3 und einpaar Beispiele gemacht . Ich habe da aber noch 2 Fragen.
    Also erstmal wie lerne ich AutoIt3 ? Gibt es da gute Tutorials die ihr mir empfehlen könnt ?
    Dann die Frage ich habe da schon etwas versucht zu erstellen eine Inputbox aber ich schaffs nicht :( Ich mache da irgendwas falsch es funktioniert alles ausser beim 2. Wort wenn ich dann auf OK drücke dann löscht sich einfach das Eingabefeld und ich muss es nocheinmal eingeben oder ich drücke auf abbrechen .

    Hier der Code :

    Spoiler anzeigen
    [autoit]

    $answer = MsgBox(4, " ", "Willst du das Wort einfügen ?")

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

    If $answer = 7 Then
    MsgBox(0, " ", "Exit")
    Exit
    EndIf

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

    $bLoop = 1

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

    While $bLoop = 1
    $text = InputBox(" ", "Schreib das Wort ""AutoIt"" rein und klicke auf Ok")
    If @error = 1 Then
    $answer = MsgBox(0, " ", "Ende!")
    Exit
    Else
    If $text <> "AutoIt" Then
    MsgBox(0, " ", "Du hast das falsche Wort eingegeben gebe AutoIt ein !")
    Else
    $bLoop = 0
    EndIf
    EndIf
    WEnd

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

    $answer = MsgBox(0, " ", "Du hast das richtige Wort eingegeben !")
    $answer = MsgBox(4, " ", "Willst du noch eine Aufgabe machen ?")

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

    If $answer = 7 Then
    MsgBox(0, " ", "Schade")
    Exit
    EndIf

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

    $bLoop = 1

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

    While $bLoop = 1
    $text = InputBox(" ", "Schreibe das Wort ""MsgBox"" ?")
    If @error = 1 Then
    $answer = MsgBox(0, " ", "Exit")
    Exit
    If $text <> "MsgBox" Then
    $answer = MsgBox(0, "Falsch", "Gib es nocheinmal ein")
    $bLoop = 0
    EndIf
    EndIf
    WEnd

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

    $answer = MsgBox(0, " ", "Du hast das richtige Ergebnis!")

    [/autoit]

    Edit bernd670 : Spoiler- und AutoIt-Tags eingefügt

    2 Mal editiert, zuletzt von bernd670 (28. Dezember 2010 um 22:54)

  • Hallo,

    Ersetze

    [autoit]


    If @error = 1 Then
    $answer = MsgBox(0, " ", "Exit")
    Exit
    If $text <> "MsgBox" Then
    $answer = MsgBox(0, "Falsch", "Gib es nocheinmal ein")
    $bLoop = 0
    EndIf
    EndIf

    [/autoit]


    Durch

    [autoit]


    If @error = 1 Then
    $answer = MsgBox(0, " ", "Exit")
    Exit
    Elseif $text <> "MsgBox" Then
    $answer = MsgBox(0, "Falsch", "Gib es nocheinmal ein")
    Else
    $bloop = 0
    EndIf

    [/autoit]
  • Wenn ich jetzt auf run script klicke dann steht da $text = InputBox(" ","Schreibe das Wort ""MsgBox""?)

    Error Unterminated string .

    EDIT: Hat funktioniert habe es falsch eingefügt .
    Hat jemand noch gute Tutorials für mich ?

    2 Mal editiert, zuletzt von Bansei (28. Dezember 2010 um 23:23)

  • Mit " beginnst und beendest du ein String. Wenn du es in einem String verwenden möchtest musst du zum beginnen und beenden ' verwenden:

    [autoit]


    $text = InputBox(" ",'Schreibe das Wort "MsgBox"?')

    [/autoit]

    Edit: War zu langsam ;(

  • Mit " beginnst und beendest du ein String. Wenn du es in einem String verwenden möchtest musst du zum beginnen und beenden ' verwenden:

    [autoit]


    $text = InputBox(" ",'Schreibe das Wort "MsgBox"?')

    [/autoit]


    Schon bemerkt :D
    Thx für die Hilfe

  • Bei mir funktiopniert es. Hier der Quellcode:

    Spoiler anzeigen
    [autoit]


    $answer = MsgBox(4, " ", "Willst du das Wort einfügen ?")

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

    If $answer = 7 Then
    MsgBox(0, " ", "Exit")
    Exit
    EndIf

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

    $bLoop = 1

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

    While $bLoop = 1
    $text = InputBox(" ", "Schreib das Wort ""AutoIt"" rein und klicke auf Ok")
    If @error = 1 Then
    $answer = MsgBox(0, " ", "Ende!")
    Exit
    Else
    If $text <> "AutoIt" Then
    MsgBox(0, " ", "Du hast das falsche Wort eingegeben gebe AutoIt ein !")
    Else
    $bLoop = 0
    EndIf
    EndIf
    WEnd

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

    $answer = MsgBox(0, " ", "Du hast das richtige Wort eingegeben !")
    $answer = MsgBox(4, " ", "Willst du noch eine Aufgabe machen ?")

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

    If $answer = 7 Then
    MsgBox(0, " ", "Schade")
    Exit
    EndIf

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

    $bLoop = 1

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

    While $bLoop = 1
    $text = InputBox(" ", "Schreibe das Wort ""MsgBox"" ?")
    If @error = 1 Then
    $answer = MsgBox(0, " ", "Exit")
    Exit
    Elseif $text <> "MsgBox" Then
    $answer = MsgBox(0, "Falsch", "Gib es nocheinmal ein")
    Else
    $bloop = 0
    EndIf
    WEnd

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

    $answer = MsgBox(0, " ", "Du hast das richtige Ergebnis!")

    [/autoit]
  • Das ist ähnlich wie bei den Klammern, und steht auch irgendwo in der Hilfe... Innerhalb von 2 Anführungszeichen müssen sie doppelt verwendet werden um sie auch in den String einzubauen. Also so z.B.:

    [autoit]

    MsgBox(64, "Test", "Test""Test""Test")

    [/autoit]
  • [autoit]


    MsgBox(64, "Test", "Test""Test""Test")
    müsste das nicht so
    MsgBox(64, "Test", '"Test""Test""Test"') oder so
    MsgBox(64, "Test", "Test" & "Test" & "Test")

    [/autoit]

    Achtung Anfänger! :whistling:

    Betrachten des Quellcodes auf eigene Gefahr, bei Übelkeit,Erbrechen,Kopfschmerzen übernehme ich keine Haftung. 8o