Brauche Hilfe bin totaler Anfänger (hab Gesten erst mit Autoit angefangen)

  • Hallo erstmal ich habe ein dickes problem da ich seit 2 tagen erst mit autoit angefangen habe weis ich nicht weiter und brauche ein rat irgendwie funktioniert mein programm nicht. bitte nicht lachen wenn alles total falsch ist ;)

    Hier der Code:

    $pfad = GUICtrlCreateInput("", 112, 72, 89, 21)
    $pfad1 = GUICtrlCreateInput("", 112, 72, 89, 21)
    $pfad2 = GUICtrlCreateInput("", 112, 104, 89, 21)
    $pfad3 = GUICtrlCreateInput("", 112, 136, 89, 21)


    #include <GUIConstants.au3>


    $Form1 = GUICreate("Form1", 448, 266, 196, 125)
    GUISetBkColor(0xA6CAF0)
    $Label1 = GUICtrlCreateLabel("V.: 1.2", 408, 248, 35, 17)
    $Label2 = GUICtrlCreateLabel("by. Denis ", 0, 248, 106, 17)
    $Button1 = GUICtrlCreateButton("CS:S", 8, 40, 97, 25, 0)
    $Button2 = GUICtrlCreateButton("Silkroad Online", 8, 72, 97, 25, 0)
    $Button3 = GUICtrlCreateButton("Portal", 8, 104, 97, 25, 0)
    $Button4 = GUICtrlCreateButton("Half-Life", 8, 136, 97, 25, 0)
    $Label3 = GUICtrlCreateLabel("Spiele:", 24, 8, 53, 20)
    GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
    $Label4 = GUICtrlCreateLabel("Festplattenpfad (z.B. D,E)", 112, 8, 180, 20)
    GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
    GUICtrlCreateInput("", 112, 40, 89, 21)
    GUICtrlCreateInput("", 112, 72, 89, 21)
    GUICtrlCreateInput("", 112, 104, 89, 21)
    GUICtrlCreateInput("", 112, 136, 89, 21)
    GUISetState(@SW_SHOW)


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

    Case $Button1
    Run ($pfad1 & ":\Programme\Steam\Steam.exe -applaunch 240")
    Exit
    Case $Button2
    Run ($pfad & ":/Programme/Silkroad/silkroad.exe")
    Exit
    Case $Button3
    Run ($pfad2 & ":\Programme\OrangeBox\RUN_PORTAL.exe")
    Exit
    Case $Button4
    Run ($pfad3 ":\Programme\OrangeBox\RUN_EP2.exe")
    Exit

    EndSwitch
    WEnd

  • Hi, du meinst vermutlich das es ungefähr so aussehen soll:

    Spoiler anzeigen
    [autoit]


    ;Include
    ;Include
    #include <GUIConstants.au3>

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

    ;GUI erstellen
    $Form1 = GUICreate("Form1", 448, 266, 196, 125)
    GUISetBkColor(0xA6CAF0)
    $Label1 = GUICtrlCreateLabel("V.: 1.2", 408, 248, 35, 17)
    $Label2 = GUICtrlCreateLabel("by. Denis ", 0, 248, 106, 17)
    $Button1 = GUICtrlCreateButton("CS:S", 8, 40, 97, 25, 0)
    $Button2 = GUICtrlCreateButton("Silkroad Online", 8, 72, 97, 25, 0)
    $Button3 = GUICtrlCreateButton("Portal", 8, 104, 97, 25, 0)
    $Button4 = GUICtrlCreateButton("Half-Life", 8, 136, 97, 25, 0)
    $Label3 = GUICtrlCreateLabel("Spiele:", 24, 8, 53, 20)
    GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
    $Label4 = GUICtrlCreateLabel("Festplattenpfad (z.B. D,E)", 112, 8, 180, 20)
    GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
    $pfad1 = GUICtrlCreateInput("", 112, 40, 40, 21)
    $pfad2 = GUICtrlCreateInput("", 112, 72, 40, 21)
    $pfad3 = GUICtrlCreateInput("", 112, 104, 40, 21)
    $pfad4 = GUICtrlCreateInput("", 112, 136, 40, 21)

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

    ;GJI anzeigen
    GUISetState(@SW_SHOW)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Button1
    Run (GUICtrlRead($pfad1) & ":\Programme\Steam\Steam.exe -applaunch 240")
    Exit
    Case $Button2
    Run (GUICtrlRead($pfad2) & ":\Programme\Silkroad\silkroad.exe")
    Exit
    Case $Button3
    Run (GUICtrlRead($pfad3) & ":\Programme\OrangeBox\RUN_PORTAL.exe")
    Exit
    Case $Button4
    Run (GUICtrlRead($pfad4) &":\Programme\OrangeBox\RUN_EP2.exe")
    Exit
    EndSwitch
    WEnd

    [/autoit]

    Noch ein paar allgemeine Dinge :) nur so als Hinweis
    1. Wenn du Quellcode hast,, rücke ihn ein, so kann man ihn besser lesen (fällt mir nach 9 Jahren immer noch schwer)
    2. Wenn du einen Post machst, oben gibt es Buttons:
    a. SP = Spoiler, damit wird alles was dazwischen steht zusammen geklappt
    b. AutoIT Zeichen = Damit wir der Quellcode gleich richtig angezeigt.

    Mfg
    Jens (McPoldy)

    Twitter: jkroeger

    Denn die Dinge, die wir erst lernen müssen, bevor wir sie tun, lernen wir beim Tun.(Aristoteles)

  • OK:
    a) Controls werden immer erst nach der GUI erstellt
    b) ControlIDs werden direkt beim erstellen und NUR dann zugewiesen
    c) Controls werden mit GUICtrlRead ausgelesen

    -> Dein AScript:

    Spoiler anzeigen
    [autoit]


    #include <GUIConstants.au3>

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

    $Form1 = GUICreate("Form1", 448, 266, 196, 125)
    GUISetBkColor(0xA6CAF0)
    $Label1 = GUICtrlCreateLabel("V.: 1.2", 408, 248, 35, 17)
    $Label2 = GUICtrlCreateLabel("by. Denis ", 0, 248, 106, 17)
    $Button1 = GUICtrlCreateButton("CS", 8, 40, 97, 25, 0)
    $Button2 = GUICtrlCreateButton("Silkroad Online", 8, 72, 97, 25, 0)
    $Button3 = GUICtrlCreateButton("Portal", 8, 104, 97, 25, 0)
    $Button4 = GUICtrlCreateButton("Half-Life", 8, 136, 97, 25, 0)
    $Label3 = GUICtrlCreateLabel("Spiele:", 24, 8, 53, 20)
    GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
    $Label4 = GUICtrlCreateLabel("Festplattenpfad (z.B. D,E)", 112, 8, 180, 20)
    GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
    $pfad = GUICtrlCreateInput("", 112, 72, 89, 21) ; Nur einmal HIEr erzeugen!
    $pfad1 = GUICtrlCreateInput("", 112, 72, 89, 21)
    $pfad2 = GUICtrlCreateInput("", 112, 104, 89, 21)
    $pfad3 = GUICtrlCreateInput("", 112, 136, 89, 21)
    GUISetState(@SW_SHOW)

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

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

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

    Case $Button1
    Run (GUICtrlRead($pfad1) & ":\Programme\Steam\Steam.exe -applaunch 240") ; GUICtrlRead, bei den anderen 3 auch verwenden !!!
    Exit
    Case $Button2
    Run ($pfad & ":/Programme/Silkroad/silkroad.exe")
    Exit
    Case $Button3
    Run ($pfad2 & ":\Programme\OrangeBox\RUN_PORTAL.exe")
    Exit
    Case $Button4
    Run ($pfad3 ":\Programme\OrangeBox\RUN_EP2.exe")
    Exit

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

    EndSwitch
    WEnd

    [/autoit]
  • Wenn du erstmal nur ein paar einfache GUIs bauen willst, bringt dir vlt der Koda Form Designer zukünftig etwas Erleichterung.
    Bei späteren Projekten, würde ich dann aber zum GUI erstellen per Hand, nach den Empfehlungen und Vorgaben meiner Vorposter, übergehen, da man so oft etwas mehr Übersicht über seinen eigenen Source hat.

    Flensburg ist wie Payback - wenn man 18 Punkte hat bekommt man ein Fahrrad.