Auto it Abfrage erstellen ?

  • Hallo,
    Ich wollte mal wissen wie ich mit Autoit eine abfrage erstelle z.B. da kommt auf den Bildschirm ein fenster da steht bitte geben sie ein Thema ein: und wenn man eingibt Auto oder Familie oder sowas das er das in einen bestimmten punkt vom Autoit Code springt. Wie kann man das umsetzen ?

  • Spoiler anzeigen
    [autoit]


    #include <ButtonConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    $Form1 = GUICreate("", 248, 89, 254, 124)
    $Input1 = GUICtrlCreateInput("", 8, 32, 121, 21)
    $Label1 = GUICtrlCreateLabel("bli, bla oder blub?", 8, 8, 87, 17)
    $Button1 = GUICtrlCreateButton("los", 144, 32, 75, 25)
    GUISetState(@SW_SHOW)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Button1
    _goto()
    EndSwitch
    WEnd

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

    Func _goto()
    $read = GUICtrlRead($Input1)
    Switch $read
    Case "bli"
    MsgBox(64, "", "zur Funktion für bli springen")
    ;_bli()
    Case "bla"
    MsgBox(64, "", "zur Funktion für bla springen")
    ;_bla()
    Case "blub"
    MsgBox(64, "", "zur Funktion für blub springen")
    ;_blub()
    Case Else
    MsgBox(64, "", "ungültige Eingabe")
    EndSwitch
    EndFunc ;==>_goto

    [/autoit]
  • i2c: das ist doch etwas hoch für einen anfänger...

    [autoit]


    func auto()
    ;der autoteil
    endfunc

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

    func familie()
    ;der familiencode
    Endfunc

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

    $input = Inputbox("thema","gib ein thema ein")
    If $input = "auto" then auto()
    If $input = "familie" then familie()

    [/autoit]
  • Falls du eine Funktion nicht verstehst, einfach draufklicken und die Hilfe öffnet sich auto..

  • Spoiler anzeigen
    [autoit]

    #include <ButtonConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    $Form1 = GUICreate("", 248, 89, 254, 124)
    $Input1 = GUICtrlCreateInput("", 8, 32, 121, 21)
    $Label1 = GUICtrlCreateLabel("bli, bla oder blub?", 8, 8, 87, 17)
    $Button1 = GUICtrlCreateButton("los", 144, 32, 75, 25)
    GUISetState(@SW_SHOW)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Button1
    _goto() ;wenn Button gedrückt, starte _goto()
    EndSwitch
    WEnd

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

    Func _goto()
    $read = GUICtrlRead($Input1) ;Inputfeld auslesen
    Switch $read ;Prüfen ob der EIngabe in Input eine Funktion zugeprdnet ist
    Case "bli" ;Wenn bli eingegeben wurde .....
    _bli() ;die Funktion _bli() aufrufen
    Case "bla"
    _bla()
    Case "blub"
    _blub()
    Case Else
    MsgBox(64, "", "ungültige Eingabe")
    EndSwitch
    EndFunc ;==>_goto

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

    Func _bli()
    MsgBox(64, "", "Ich bin die Funktion _bli()")
    EndFunc ;==>_bli

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

    Func _bla()
    MsgBox(64, "", "Ich bin die Funktion _bla()")
    EndFunc ;==>_bla

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

    Func _blub()
    MsgBox(64, "", "Ich bin die Funktion _blub()")
    EndFunc ;==>_blub

    [/autoit]
    Zitat

    i2c: das ist doch etwas hoch für einen anfänger...


    Ja, da magst du evtl. recht haben.

  • nein der code von ideas2code war schon gut nur wo geb ich jetzt meinen code für z.B bli, bla oder blub ein ? z.B ich will eingeben sleep(3000) mousemove(...) mouseclick(left) wie kann ich das dareinschreiben und wo (z.B für bli)?

  • Soll das wieder ein Bot werden???
    Das hast du schon 3 mal versucht :cursing:

    Spoiler anzeigen

    Grundkenntnisse in: C++, JavaScript
    Sehr gute Kenntnisse: PHP, JAVA, C und näturlich AutoIt


    Klaviatur, Anhang UDF, GDI+ Mühle

    Zitat

    "Wenn einen um 20h der Pizzadienst anruft und fragt, ob man's nur vergessen hat und ob man das gleiche
    möchte wie immer -- dann sollte man sein Bestellverhalten evtl überdenken"

  • ich will eingeben sleep(3000) mousemove(...) mouseclick(left) wie kann ich das dareinschreiben

    mit der tastatur, aber nicht in diesem Forum, wenn Cartan recht hat, hat man dich doch schon 3 mal auf die Forenregeln hingewieisen, aber da ich keine lust habe den link zu kopieren: Forenregeln lesen

  • also ich will ein Programm erstellen wo ich eingebe Skype und der dann skype öffnet also ein Prgoramm der auf meinem PC die sachen öffnet die ich will.


    also was muss ich ändern wenn ich mehr als 3 Variablen benutzen will ?

  • Zitat

    lso ich will ein Programm erstellen wo ich eingebe Skype und der dann skype öffnet also ein Prgoramm der auf meinem PC die sachen öffnet die ich will.

    Wofür bitte brauchst du dann mouseclick ???

    Spoiler anzeigen

    Grundkenntnisse in: C++, JavaScript
    Sehr gute Kenntnisse: PHP, JAVA, C und näturlich AutoIt


    Klaviatur, Anhang UDF, GDI+ Mühle

    Zitat

    "Wenn einen um 20h der Pizzadienst anruft und fragt, ob man's nur vergessen hat und ob man das gleiche
    möchte wie immer -- dann sollte man sein Bestellverhalten evtl überdenken"

  • also ich will ein Programm erstellen wo ich eingebe Skype und der dann skype öffnet also ein Prgoramm der auf meinem PC die sachen öffnet die ich will.


    also was muss ich ändern wenn ich mehr als 3 Variablen benutzen will ?

    dazu ist das klicken unnötig, siehe Autostarter in meiner Signatur. Die Forenregeln hast du mitlerweile hoffentlich gelesen, denn die Maus- schubserei und klickerei lässt mich das Gegenteil befürchten,

    Edit: auch dieses kleine Beispiel SKript für KombBox erfüllt den Zweck:

    Spoiler anzeigen
    [autoit]

    #include <GUIConstantsEx.au3>
    #Include <GuiComboBox.au3>

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

    Const $sElect = "bitte eine URL auswählen"
    Global $URL

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

    If Not FileExists(@ScriptDir & "\URL.INI") Then
    $sData = "AutoIt=http://www.autoit.de" & @LF & "Dein Thread=http://www.autoit.de/index.php?page=Thread&postID=156685#post156685" & @LF & "AutoIt V3=http://www.autoitscript.com/cgi-bin/getfile.pl?autoit3/autoit-v3-setup.exe"
    IniWriteSection(@ScriptDir & "\URL.INI", "URLs", $sData)
    EndIf

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

    $hGui = GUICreate("Combobox mit INI für URL-Aufruf", 300, 160, 302, 218)
    $hcboProg = GUICtrlCreateCombo("", 8, 8, 200, 25)
    $hbtnAdd = GUICtrlCreateButton("&Hinzufügen", 213, 8)
    $hbtnDel = GUICtrlCreateButton("&Löschen", 213, 33)
    $hlblURL = GUICtrlCreateLabel("", 8, 35, 200, 50)
    $hbtnOpen = GUICtrlCreateButton("&Öffnen", 8, 85)
    read_INI()
    GUICtrlSetState($hbtnOpen, $GUI_DISABLE)
    GUISetState(@SW_SHOW)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $hbtnAdd
    $write1 = InputBox("URL", "Bitte eine gültige URL eingeben")
    If $write1 <> "" Then
    $write2 = InputBox("URL verwalten unter", "Bitte Kurzbegriff eingeben")
    If $write2 <> "" Then IniWrite(@ScriptDir & "\URL.INI", "URLs", $write2, $write1)
    GUICtrlSetData($hcboProg, $write2, $write2)
    EndIf
    show_Selection()
    Case $hbtnDel
    $sDel = GUICtrlRead($hcboProg)
    IniDelete(@ScriptDir & "\URL.INI", "URLs", $sDel)
    GUICtrlSetData($hcboProg,"")
    read_INI()
    Case $hcboProg
    show_Selection()
    Case $hbtnOpen
    ShellExecute($URL)
    ;ConsoleWrite($URL & @CRLF)
    EndSwitch
    WEnd

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

    Func read_INI()
    $list1 = IniReadSection(@ScriptDir & "\URL.INI", "URLs")
    ConsoleWrite($list1 & @CRLF)
    if IsArray($list1) Then
    For $i = 1 To $list1[0][0]
    GUICtrlSetData($hcboProg, $list1[$i][0])
    Next
    EndIf
    _GUICtrlComboBox_InsertString ($hcboProg,$sElect,0)
    _GUICtrlComboBox_SetCurSel($hcboProg,0)
    EndFunc ;==>read_INI

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

    Func show_Selection()
    If GUICtrlRead($hcboProg) = $sElect Then
    GUICtrlSetState($hbtnOpen, $GUI_DISABLE)
    GUICtrlSetData($hlblURL, "")
    Else
    GUICtrlSetState($hbtnOpen, $GUI_ENABLE)
    $Prog = GUICtrlRead($hcboProg)
    ConsoleWrite("ausgewählt: " & $Prog & @CRLF)
    $URL = IniRead(@ScriptDir & "\URL.INI", "URLs", $Prog, "")
    GUICtrlSetData($hlblURL, $URL)
    EndIf
    EndFunc ;==>show_Selection

    [/autoit]

    mfg (Auto)Bert

    Einmal editiert, zuletzt von AutoBert (21. Mai 2010 um 18:38)

  • [autoit]

    #include <ButtonConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    $Form1 = GUICreate("", 248, 89, 254, 124)
    $Input1 = GUICtrlCreateInput("", 8, 32, 121, 21)
    $Label1 = GUICtrlCreateLabel("bli, bla oder blub?", 8, 8, 87, 17)
    $Button1 = GUICtrlCreateButton("los", 144, 32, 75, 25)
    GUISetState(@SW_SHOW)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Button1
    $read = GUICtrlRead($Input1) ;Input auslesen
    $pfad = IniRead(@ScriptDir & "\programme.ini", "main", $read, "") ;das was in Input steht in der ini suchen then
    If $pfad = "" then
    Msgbox(64, "", "Programm existiert nicht")
    Else
    ShellExecute($pfad) ;das Programm starten
    Endif
    EndSwitch
    WEnd

    [/autoit]

    Als programme.ini im Skriptordner ablegen.

    Code
    [main]
    firefox=c:\Programme\irgendwo\firefox.exe
    skype=c:\irgendwo\skype.exe

    ohne Gewähr auf Funktion

  • Modifizierte Version von I2C. Ist erweiterbar:

    [autoit]

    #include <ButtonConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>

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

    Dim $Input[2]

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

    $Form1_1 = GUICreate("", 249, 108, 254, 124)
    $Input[0] = GUICtrlCreateInput("", 8, 32, 121, 21)
    $Label1 = GUICtrlCreateLabel("bli, bla oder blub?", 8, 8, 87, 17)
    $Button1 = GUICtrlCreateButton("los", 144, 32, 75, 25)
    $Input[1] = GUICtrlCreateInput("Input2", 8, 64, 121, 21)

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

    GUISetState(@SW_SHOW)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit

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

    EndSwitch
    WEnd

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

    GUISetState(@SW_SHOW)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Button1
    For $i = 0 To 1
    $read = GUICtrlRead($Input[$i]) ;Input auslesen
    $pfad = IniRead(@ScriptDir & "\programme.ini", "main", $read, "") ;das was in Input steht in der ini suchen then
    If $pfad = "" then
    Msgbox(64, "", "Programm existiert nicht")
    Else
    ShellExecute($pfad) ;das Programm starten
    Endif
    Next
    EndSwitch
    WEnd

    [/autoit]
    Spoiler anzeigen

    Grundkenntnisse in: C++, JavaScript
    Sehr gute Kenntnisse: PHP, JAVA, C und näturlich AutoIt


    Klaviatur, Anhang UDF, GDI+ Mühle

    Zitat

    "Wenn einen um 20h der Pizzadienst anruft und fragt, ob man's nur vergessen hat und ob man das gleiche
    möchte wie immer -- dann sollte man sein Bestellverhalten evtl überdenken"

  • nur damit ich das verstehe wo muss ich hier (weil ich den code übersichtlicher finde) den code ändern damit es zwei bzw drei oder mehr Textfelder gibt die nacheinander oder gleichzeitig ablaufen ?

    Spoiler anzeigen