Mein SoftCreator - Problem mit Nach-Und-Nach-Aktionen

  • Hallo Leute,
    ich hab vor langer Zeit mal ein Projekt mit dem Namen "SoftCreator" programmiert, mit dem man sich eigene Programme zusammenklicken kann. Der Skript beinhaltet auch einen GUICreator, den ich von einem User übernommen habe. Leider fällt mir sein Name nicht mehr ein... Wenn jemand weiß, wie er hieß, schreibt mir!
    Zurück zum Thema:
    die GUI ist fertig und Aktionen wie "Info & Hilfe" und "GUICreator öffnen" sind programmiert. Das Problem ist das ich nicht weiß, wie ich eine Schleife erstelle, die alles Nach und Nach ausführt. Beispiel:
    Das Programm guckt, was als erstes in der Liste steht und führt das als erstes aus. Danach führt er der Reihe nach, die anderen Aktionen auf der Liste aus.
    Weiß jemand wie das funktionieren könnte?

    Danke.

    Skript
    [autoit]


    #include <ButtonConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <GUIListBox.au3>
    #include <GuiStatusBar.au3>
    #include <ListViewConstants.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    #include <File.au3>
    #Include <GuiEdit.au3>
    #include <Misc.au3>
    Opt("GUIOnEventMode",1)
    ;Variablendefinitionen --------------------
    Global $pathcha = @ScriptDir&"\logfile.au3"
    Global $pathvar = @ScriptDir&"\varfile.ini"
    Global $toolwidth = 200
    Global $toolheight = 200
    Global $inspwidth = 500
    Global $inspheight = 200
    Global $toolguiname = "GUICreator"
    Global $winname
    Global $Winpos[4]
    Global $newGUI
    Global $text
    Global $numbercontrol = 0
    Global $control[99]
    Global $conname[99]
    Global $contype[99]
    Global $conpos[99][4]
    Global $iVarNameControl
    Global $close
    Global $convarname
    Global $numberofcontrol
    Global $genGUI
    ;------------------------------------------
    IniDelete($pathvar,"var")
    IniWrite($pathvar, "var","starting","yes")
    ;Hauptgui-----------------------
    #Region ### START Koda GUI section ### Form=C:\Users\Jonathan Verbeek\Desktop\Desktop Ordner\Monopoly Besitzerrechte 1.0\Form1.kxf
    $Form1 = GUICreate("SoftCreator 1.0 - Erstelle deine eigenen Windows-Anwendungen!", 625, 425, 192, 124)
    $controls = GUICtrlCreateGroup("Befehle", 8, 24, 201, 377)
    $focuslabel = GUICtrlCreateLabel("",3,450,0,0)
    $comlist = GUICtrlCreateList("", 16, 40, 185, 357, $WS_BORDER)
    GUICtrlSetData(-1, "Meldung anzeigen|Beschriftungstext ändern|Fenstertitel ändern|Variable hinzufügen|@error setzten|Falls-Schleife|Wiederhol-Schleife|Maus zu Position schicken|Mauscursor ändern|Warten|Externes Programm starten|Sound abspielen|Sound pausieren|Sound stoppen|INI-Datei schreiben|INI-Datei lesen|Datei erstellen|In Datei schreiben|Aus Datei lesen")
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    $end = GUICtrlCreateGroup("Skript", 216, 24, 401, 377)
    $script = GUICtrlCreateListView("Befehle", 224, 40, 385, 353)
    GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 0, 381)
    $script_0 = GUICtrlCreateListViewItem("//Start SoftCreator Program", $script)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    $guicreatoropen = GUICtrlCreateButton("GUICreator öffnen", 8, 0, 105, 25, $WS_GROUP)
    $msgflagsopen = GUICtrlCreateButton("Meldung-Flag-Referenz", 120, 0, 139, 25, $WS_GROUP)
    $close = GUICtrlCreateButton("Beenden", 544, 0, 75, 25, $WS_GROUP)
    $info = GUICtrlCreateButton("Info/Hilfe", 464, 0, 75, 25, $WS_GROUP)
    $dekolabel = GUICtrlCreateLabel("Erstelle deine eigenen Anwendungen!", 272, 8, 183, 17)
    $StatusBar1 = _GUICtrlStatusBar_Create($Form1)
    Dim $StatusBar1_PartsWidth[2] = [493, -1]
    _GUICtrlStatusBar_SetParts($StatusBar1, $StatusBar1_PartsWidth)
    _GUICtrlStatusBar_SetText($StatusBar1, "Aktion", 0)
    _GUICtrlStatusBar_SetText($StatusBar1, "created by button421", 1)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###
    GUISetOnEvent($GUI_EVENT_CLOSE, "_cls")
    GUICtrlSetOnEvent($close, "_cls")
    GUICtrlSetOnEvent($guicreatoropen, "_open")
    ;ToolGUI------------------------
    Global $guicreator = GUICreate($toolguiname, $toolwidth, $toolheight, 815,5)
    Global $newwinbut = guictrlcreatebutton("Neues Fenster", 0, 0, $toolwidth/2, $toolheight/5)
    Global $delwinbut = guictrlcreatebutton("Fenster löschen", $toolwidth/2, 0, $toolwidth/2, $toolheight/5)
    guictrlsetstate(-1, $GUI_DISABLE)
    Global $newinputbut = guictrlcreatebutton("Neuer Input", 0, $toolheight/5, $toolwidth/2, $toolheight/5)
    guictrlsetstate(-1, $GUI_DISABLE)
    Global $newlabelbut = guictrlcreatebutton("Neuer Label", $toolwidth/2, $toolheight/5, $toolwidth/2, $toolheight/5)
    guictrlsetstate(-1, $GUI_DISABLE)
    Global $newbutbut = guictrlcreatebutton("Neuer Button", 0, $toolheight/5*2, $toolwidth/2, $toolheight/5)
    guictrlsetstate(-1, $GUI_DISABLE)
    Global $newradiobut = guictrlcreatebutton("Neuer Radiobutton", $toolwidth/2, $toolheight/5*2, $toolwidth/2, $toolheight/5)
    guictrlsetstate(-1, $GUI_DISABLE)
    Global $undobut = guictrlcreatebutton("Rückgängig", 0, $toolheight/5*3, $toolwidth/2, $toolheight/5)
    Global $savebut = guictrlcreatebutton("Fertig", $toolwidth/2, $toolheight/5*3, $toolwidth/2, $toolheight/5)
    guictrlsetstate(-1, $GUI_DISABLE)
    Global $infobut = GUICtrlCreateButton("Informationen", 0, $toolheight/5*4, $toolwidth/2, $toolheight/5)
    Global $exitbut = GUICtrlCreateButton("Beenden", $toolwidth/2, $toolheight/5*4, $toolwidth/2, $toolheight/5)
    guisetstate(@SW_HIDE)
    GUISetOnEvent($GUI_EVENT_CLOSE, "_clsguicrt")
    ;Inspektor-----------------------------
    Global $inspektorgui = guicreate("Inspektor", $inspwidth, $inspheight, 5,5)
    Global $changeslist = guictrlcreatelistview("Name|Typ|X-Koord.|Y-Koord.|Breite|Höhe", 0,0, $inspwidth, $inspheight)
    Global $item = guictrlcreatelistviewitem(" | | | | | ", -1)
    guisetstate(@SW_HIDE)
    guisetonevent($GUI_EVENT_CLOSE, "_clsguicrt")
    ;Events---------------------------------
    GUICtrlSetOnEvent($exitbut, "_clsguicrt")
    GUICtrlSetOnEvent($newwinbut, "_testwin")
    GUICtrlSetOnEvent($delwinbut, "_delwin")
    GUICtrlSetOnEvent($savebut, "_saveau3")
    GUICtrlSetOnEvent($newinputbut, "_newinput")
    GUICtrlSetOnEvent($newbutbut, "_newbut")
    GUICtrlSetOnEvent($newlabelbut, "_newlabel")
    GUICtrlSetOnEvent($newradiobut, "_newradio")
    GUICtrlSetOnEvent($undobut, "_undo")
    GUICtrlSetOnEvent($info, "_info")
    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    _cls()
    Case $info
    MsgBox(64,"Info/Hilfe","INFO"&@CRLF&"*****"&@CRLF&"Dieses Programm wurde mit AutoIt3 erstellt und von <button421> auf autoit.de programmiert!"&@CRLF&"HILFE"&@CRLF&"******"&@CRLF&"Einfach mit GUICreator ein Windows-Fenster zusammenbasteln und dann programmieren: Einfach Aktion und Befehle in der linken Liste auswählen! Daten eingeben und auf ""OK"" klicken! Dann ist der Befehl in der rechten Liste eingetragen!")
    EndSwitch
    WEnd

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

    Func _cls()
    $questionexit = MsgBox(36, "Beenden?","Es sind noch offene Projekte aktiv! Wollen sie wirklich beenden?")
    If $questionexit = 6 Then
    Exit
    Else
    ;Nix
    EndIf
    EndFunc

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

    Func _open()
    GUISetState(@SW_SHOW, $guicreator)
    GUISetState(@sW_SHOW, $inspektorgui)
    EndFunc

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

    Func _clsguicrt()
    GUISetState(@SW_HIDE, $guicreator)
    GUISetState(@SW_HIDE, $inspektorgui)
    GUISetState(@SW_HIDE, $newGUI)
    EndFunc

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

    while 2
    if _ispressed(02) then
    $cmsg = GUIGetCursorInfo()
    if not @error and IsArray($cmsg) Then
    if winactive($winname) Then
    if $cmsg[4] = 0 Then
    GUICtrlSetData($item, $Winname&"|"&"GUI"&"|"&$Winpos[0]&"|"&$winpos[1]&"|"&$Winpos[2]&"|"&$Winpos[3])
    EndIf
    For $y = 2 to $numbercontrol
    if $cmsg[0] > $conpos[$y][0] and $cmsg[0] < $conpos[$y][0]+$conpos[$y][2] and $cmsg[1] > $conpos[$y][1] and $cmsg[1] < $conpos[$y][1]+$conpos[$y][3] Then
    GUICtrlSetData($item, $conname[$y]&"|"&$contype[$y]&"|"&$conpos[$y][0]&"|"&$conpos[$y][1]&"|"&$conpos[$y][2]&"|"&$conpos[$y][3])
    EndIf
    Next
    EndIf
    EndIf
    Do
    Until not _ispressed(02)
    sleep(40)
    EndIf
    WEnd
    Func _newinput()
    _newcontrol(0)
    EndFunc
    Func _newbut()
    _newcontrol(1)
    EndFunc
    Func _newlabel()
    _newcontrol(2)
    EndFunc
    Func _newradio()
    _newcontrol(3)
    EndFunc

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

    Func _gethelp()
    MsgBox(0, "Hilfe", "Zum Erstellen eines neuen Fensters einfach auf 'Neues Fenster' drücken."&@CRLF&"Dort den gewünschten Namen eingeben und das Fenster durch Bewegen mit der Maus positionieren. Anschliessend einfach klicken."&@CRLF&@TAB&"ACHTUNG: Nachfolgendes Verschieben hat keinen Effekt mehr auf die festgelegte Position!"&@CRLF&"Die Größe des Fensters durch Bewegen mit der Maus definieren. Anschliessend einfach klicken."&@CRLF&"Erst dann können die vier zur Auswahl stehenden Controls auf die gleiche Weise erstellt werden."&@CRLF&"Mit Rechtsklick auf das jeweilige Control lassen sich die Werte im Inspektor ansehen."&@CRLF&" "&@CRLF&"Wenn das GUI fertig erstellt ist, einfach auf 'Als *.au3 speichern' klicken, und den gewünschten Speicherort/namen eingeben.")
    EndFunc
    Func _getinfo()
    if $winname <> "" Then
    $infotext = ""
    $infotext = $infotext&"Aktueller GUI-Titel: "&$Winname&@CRLF
    $infotext = $infotext&"Anzahl der Controls: "&$numbercontrol-1&@CRLF
    $infotext = $infotext&@TAB&"Einzelinformationen: "&@CRLF
    for $z = 2 to $numbercontrol
    $infotext = $infotext&@TAB&@TAB&$z-1&"."&@CRLF
    $infotext = $infotext&@TAB&@TAB&"Name: "&$conname[$z]&@CRLF
    Switch $contype[$z]
    Case 0
    $infotext = $infotext&@TAB&@TAB&"Typ: "&"Input"&@CRLF
    Case 1
    $infotext = $infotext&@TAB&@TAB&"Typ: "&"Button"&@CRLF
    Case 2
    $infotext = $infotext&@TAB&@TAB&"Typ: "&"Label"&@CRLF
    Case 3
    $infotext = $infotext&@TAB&@TAB&"Typ: "&"Radiobutton"&@CRLF
    EndSwitch
    $infotext = $infotext&@TAB&@TAB&"Abmessungen: X-Pos.: "&$conpos[$z][0]&" Y-Pos.: "&$conpos[$z][1]&" Länge: "&$conpos[$z][2]&" Höhe: "&$conpos[$z][3]&@CRLF
    $infotext = $infotext&@TAB&@TAB&" "&@CRLF
    Next
    MsgBox(0, "Informationen", $infotext)
    Else
    MsgBox(0, "Informationen", "Noch kein Fenster erstellt.")
    EndIf
    EndFunc

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

    Func _testwin()
    if $winname <> "" Then
    $del = MsgBox(4, "Altes GUI", "Altes GUI überschreiben?")
    if $del = 6 then
    guidelete($newGUI)
    $numbercontrol = 0
    _newwin()
    EndIf
    Else
    _newwin()
    EndIf

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

    EndFunc

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

    Func _newwin()
    $Winname = inputbox("Neues Fenster", "1. Geben sie den Fenster-Namen ein."&@CRLF&"2. Positionieren sie das Fenster."&@CRLF&"3. Verändern sie die Größe des Fensters.")
    if $Winname <> "" Then
    $newGUI = GUICreate($winname, 150, 150)
    GUISetOnEvent($GUI_EVENT_CLOSE, "_clsguicrt")
    guisetstate()
    while not _ispressed(01)
    $mousepos = mousegetpos()
    $winpos = wingetpos($Winname)
    winmove($winname, "", $mousepos[0]-150, $mousepos[1]-170)
    ToolTip($winpos[0]&"/"&$winpos[1], $mousepos[0], $mousepos[1])
    sleep(40)
    WEnd
    $winpos = wingetpos($Winname)
    while _ispressed(01)
    WEnd
    _MouseTrap($winpos[0]+50, $winpos[1]+10, @Desktopwidth, @Desktopheight)
    while not _ispressed(01)
    $mousepos = mousegetpos()
    $winpos = wingetpos($Winname)
    winmove($winname, "",$winpos[0], $winpos[1] , $mousepos[0]-($winpos[0]-20), $mousepos[1]-($winpos[1]-20))
    ToolTip($winpos[2]&"/"&$winpos[3]-20, $mousepos[0], $mousepos[1])
    sleep(40)
    WEnd
    _mousetrap()
    ToolTip("")
    $numbercontrol = 1
    $winpos = wingetpos($Winname)
    guictrlsetstate($delwinbut, $GUI_ENABLE)
    guictrlsetstate($savebut, $GUI_ENABLE)
    guictrlsetstate($newinputbut, $GUI_ENABLE)
    guictrlsetstate($newlabelbut, $GUI_ENABLE)
    guictrlsetstate($newbutbut, $GUI_ENABLE)
    guictrlsetstate($newradiobut, $GUI_ENABLE)
    Else
    _removevar()
    EndIf
    EndFunc

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

    Func _newcontrol($type)
    $numbercontrol += 1
    $convarname = InputBox("Neues Control","Geben sie den Variablennamen ein!") ;Variablenabfrage!
    $conname[$numbercontrol] = inputbox("Neues Control", "1. Geben sie den Control-Namen ein."&@CRLF&"2. Positionieren sie das Control."&@CRLF&"3. Verändern sie die Größe des Controls.")
    ;~ IniWrite($pathvar,"var","var"&+$numberofcontrol,$convarname)
    if $conname[$numbercontrol] <> "" Then
    $contype[$numbercontrol] = $type
    while _ispressed(01)
    WEnd
    $actpos = wingetpos($Winname)
    mousemove($actpos[0]+$winpos[2]/2, $actpos[1]+$actpos[3]/2, 0)
    switch $type
    Case 0
    $control[$numbercontrol] = guictrlcreateinput($conname[$numbercontrol], 0, 0, 100, 30)
    Case 1
    $control[$numbercontrol] = guictrlcreatebutton($conname[$numbercontrol], 0, 0, 100, 30)
    Case 2
    $control[$numbercontrol] = guictrlcreatelabel($conname[$numbercontrol], 0, 0, 100, 30)
    Case 3
    $control[$numbercontrol] = GUICtrlCreateRadio($conname[$numbercontrol], 0, 0, 100, 30)
    EndSwitch
    _mousetrap($actpos[0]+1, $actpos[1]+30, $actpos[0]+$actpos[2], $actpos[1]+$actpos[3])
    While not _ispressed(01)
    $mousepos = mousegetpos()
    guictrlsetpos($control[$numbercontrol], $mousepos[0]-$actpos[0]-101, $mousepos[1]-$actpos[1]-51)
    sleep(40)
    WEnd
    $tempconpos = controlgetpos($Winname, "", $control[$numbercontrol])
    $conpos[$numbercontrol][0] = $tempconpos[0]
    $conpos[$numbercontrol][1] = $tempconpos[1]
    while _ispressed(01)
    WEnd
    _mousetrap($conpos[$numbercontrol][0]+$actpos[0]+5, $conpos[$numbercontrol][1]+$actpos[1]+30, $actpos[0]+$actpos[2], $actpos[1]+$actpos[3])
    $actpos = wingetpos($Winname)
    While not _ispressed(01)
    $mousepos = mousegetpos()
    guictrlsetpos($control[$numbercontrol], $conpos[$numbercontrol][0], $conpos[$numbercontrol][1], $mousepos[0]-($actpos[0]+$conpos[$numbercontrol][0]), $mousepos[1]-($actpos[1]+$conpos[$numbercontrol][1]+20))
    sleep(40)
    WEnd
    _mousetrap()
    $tempconpos = controlgetpos($Winname, "", $control[$numbercontrol])
    $conpos[$numbercontrol][2] = $tempconpos[2]
    $conpos[$numbercontrol][3] = $tempconpos[3]
    Else
    $numbercontrol -= 1
    EndIf

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

    EndFunc

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

    Func _undo()
    if $numbercontrol > 1 Then
    guictrldelete($control[$numbercontrol])
    $conpos[$numbercontrol][0] = ""
    $conpos[$numbercontrol][1] = ""
    $conpos[$numbercontrol][2] = ""
    $conpos[$numbercontrol][3] = ""
    $conname[$numbercontrol] = ""
    $contype[$numbercontrol] = ""
    $numbercontrol -= 1
    Else
    MsgBox(64, "SoftCreator", "Nichts zu widerrufen!")
    EndIf
    EndFunc

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

    Func _saveau3()
    guisetstate(@SW_HIDE, $guicreator)
    guisetstate(@SW_HIDE, $newGUI)
    $fehler = 0
    $path = FileSaveDialog("Speichere *.au3...", @SCRIPTDIR&"\", "Autoit(*.au3)")
    if $path <> "" Then
    if stringright($path, 4) = ".au3" Then
    $newfile = fileopen($path, 10)
    if @error then $fehler = 1
    Else
    $path = $path&".au3"
    $newfile = fileopen($path, 10)
    if @error then $fehler = 1
    EndIf
    if not $fehler = 1 Then
    Global $genGUI = GUICreate("Erstelle Datei...", 300, 300, -1, $WS_EX_TOPMOST)
    $progress = guictrlcreateprogress(0, 20, 300, 50)
    GUICtrlCreateLabel("Aktuell: ", 0, 5, 40, 15)
    $aktuelllabel = guictrlcreatelabel("", 40, 5, 260, 15)
    $edit = guictrlcreateedit("Starte speichern...", 0, 75, 300, 195)
    guisetstate()
    $text = ""
    guictrlsetdata($aktuelllabel, "Erstelle Kopf...")
    guictrlsetdata($edit, guictrlread($edit)&@CRLF&"Erstelle Kopf...")
    $text = $text&"#include <GUIConstantsEx.au3>"&@CRLF
    $text = $text&"#include <WindowsConstants.au3>"&@CRLF
    guictrlsetdata($progress, 1)
    guictrlsetdata($edit, guictrlread($edit)&@CRLF&"Abgeschlossen!")
    guictrlsetdata($aktuelllabel, "Erstelle GUI...")
    guictrlsetdata($edit, guictrlread($edit)&@CRLF&"Erstelle GUI...")
    $text = $text&"$Form = GUICreate('"&$winname&"',"&$winpos[2]&","&$winpos[3]-20&","&$winpos[0]&","&$winpos[1]&")"&@CRLF
    guictrlsetdata($progress, 50)
    guictrlsetdata($edit, guictrlread($edit)&@CRLF&"Abgeschlossen!")
    guictrlsetdata($aktuelllabel, "Lade GUIControls...")
    guictrlsetdata($edit, guictrlread($edit)&@CRLF&"Lade GUIControls...")
    For $x = 2 to $numbercontrol
    switch $contype[$x]
    Case 0
    $text = $text&"$"&$convarname&" = guictrlcreateinput('"&$conname[$x]&"', "&$conpos[$x][0]&", "&$conpos[$x][1]&", "&$conpos[$x][2]&", "&$conpos[$x][3]&")"&@CRLF
    Case 1
    $text = $text&"$"&$convarname&" = guictrlcreatebutton('"&$conname[$x]&"', "&$conpos[$x][0]&", "&$conpos[$x][1]&", "&$conpos[$x][2]&", "&$conpos[$x][3]&")"&@CRLF
    Case 2
    $text = $text&"$"&$convarname&" = guictrlcreatelabel('"&$conname[$x]&"', "&$conpos[$x][0]&", "&$conpos[$x][1]&", "&$conpos[$x][2]&", "&$conpos[$x][3]&")"&@CRLF
    Case 3
    $text = $text&"$"&$convarname&" = GUICtrlCreateRadio('"&$conname[$x]&"', "&$conpos[$x][0]&", "&$conpos[$x][1]&", "&$conpos[$x][2]&", "&$conpos[$x][3]&")"&@CRLF
    EndSwitch
    Next
    $text = $text&"GUISetState(@SW_SHOW)"&@CRLF
    $text = $text&" "&@CRLF
    guictrlsetdata($progress, 90)
    guictrlsetdata($edit, guictrlread($edit)&@CRLF&"Abgeschlossen!")
    guictrlsetdata($aktuelllabel, "Erstelle notwendigen Code...")
    guictrlsetdata($edit, guictrlread($edit)&@CRLF&"Erstelle notwendigen Code...")
    $text = $text&"While 1"&@CRLF
    $text = $text&@TAB&"$Msg = guigetmsg()"&@CRLF
    $text = $text&@TAB&"Switch $msg"&@CRLF
    $text = $text&@TAB&@TAB&"Case $GUI_EVENT_CLOSE"&@CRLF
    $text = $text&@TAB&@TAB&@TAB&"exit"&@CRLF
    $text = $text&@TAB&"Endswitch"&@CRLF
    $text = $text&"WEnd"&@CRLF
    guictrlsetdata($progress, 100)
    guictrlsetdata($edit, guictrlread($edit)&@CRLF&"Abgeschlossen!")
    guictrlsetdata($progress, 0)
    guictrlsetdata($edit, guictrlread($edit)&@CRLF&"Speichern...")
    guictrlsetdata($aktuelllabel, "Speichere...")
    FileWrite($newfile, $text)
    if not @error Then
    guictrlsetdata($progress, 100)
    guictrlsetdata($edit, guictrlread($edit)&@CRLF&"Datei erfolgreich erstellt!")
    guictrlsetdata($aktuelllabel, "Erfolgreich abgeschlossen!")
    $readybut = guictrlcreatebutton("Fertig", 250, 270, 50, 30)
    GUICtrlSetOnEvent($readybut, "_ready")
    Else
    MsgBox(0, "Error", "Ein Fehler beim Erstellen der Datei ist aufgetreten.")
    guictrlsetdata($aktuelllabel, "Fehlerbedingter Abbruch!")
    guictrlsetdata($edit, guictrlread($edit)&@CRLF&"Ein Fehler ist aufgetreten!")
    $readybut = guictrlcreatebutton("Fertig", 250, 270, 50, 30)
    GUICtrlSetOnEvent($readybut, "_ready")
    EndIf

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

    Else
    MsgBox(0, "Error", "Ein Fehler beim Erstellen der Datei ist aufgetreten.")
    EndIf

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

    Else
    guisetstate(@SW_SHOW, $guicreator)
    guisetstate(@SW_SHOW, $newGUI)
    EndIf

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

    Endfunc

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

    Func _ready()
    guisetstate(@SW_HIDE, $genGUI)
    GUIDelete($genGUI)
    guisetstate(@SW_SHOW, $guicreator)
    guisetstate(@SW_SHOW, $newGUI)
    EndFunc

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

    Func _delwin()
    $del = MsgBox(4, "Altes GUI", "Altes GUI wirklich löschen?")
    if $del = 6 then
    guidelete($newGUI)
    _removevar()
    EndIf
    EndFunc

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

    Func _removevar()
    $winname = ""
    $numbercontrol = 0
    guictrlsetdata($item, " | | | | | ")
    guictrlsetstate($delwinbut, $GUI_DISABLE)
    guictrlsetstate($savebut, $GUI_DISABLE)
    guictrlsetstate($newinputbut, $GUI_DISABLE)
    guictrlsetstate($newlabelbut, $GUI_DISABLE)
    guictrlsetstate($newbutbut, $GUI_DISABLE)
    guictrlsetstate($newradiobut, $GUI_DISABLE)
    EndFunc

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

    Func _exit()
    if $winname <> "" Then
    $close = MsgBox(4, "Wirklich beenden?", "Es existiert noch ein neu erstelltes Fenster. Wirklich beenden?")
    if $close = 6 Then Exit
    Else
    Exit
    EndIf

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

    EndFunc

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

    Func _info()
    MsgBox(64,"Info/Hilfe","INFO"&@CRLF&"*****"&@CRLF&"Dieses Programm wurde mit AutoIt3 erstellt und von <button421> auf autoit.de programmiert!"&@CRLF&"HILFE"&@CRLF&"******"&@CRLF&"Einfach mit GUICreator ein Windows-Fenster zusammenbasteln und dann programmieren: Einfach Aktion und Befehle in der linken Liste auswählen! Daten eingeben und auf ""OK"" klicken! Dann ist der Befehl in der rechten Liste eingetragen!")
    EndFunc

    [/autoit]

    Meine fertigen Projekte:
    VirtualCash
    Monopoly Digital

    Daran arbeite ich gerade:
    Einem Skript, womit man ohne Programmierkentisse eigene Programme machen kann (habe ich selber früher gesucht :D ) Stand: ||||||||||||||||||||||||| 6%

  • Hmmm... also so?

    [autoit]


    ;Arrays definieren (Kommt dann natürlich immer nach dem "OK" klick, des Erstellen-Fensters
    $aktionen[0] = "Run; Path=EingegebenerPfad"
    $aktionen[1] = "Msg; Flag=EingegebeneFlag; Title=EingegebenerTitel; Text=EingegebenerText"
    $aktionen[2] = "Exit"
    ;For-Schleife
    For $i = $gesamtaktionen In $aktionen
    If $aktionen[0] = StringInStr($aktionen[?], "Run;")
    $runpath = GUICtrlRead($okbutton);
    Run($runpath)
    EndIf
    Next

    [/autoit]

    Edit: ? heißt das, wo ich nicht weiß was dahin kommen soll!

    Meine fertigen Projekte:
    VirtualCash
    Monopoly Digital

    Daran arbeite ich gerade:
    Einem Skript, womit man ohne Programmierkentisse eigene Programme machen kann (habe ich selber früher gesucht :D ) Stand: ||||||||||||||||||||||||| 6%

  • Also so?

    [autoit]


    $aktionen[0] = "Run" ;Pfad durch GUICtrlRead($pfadinput)
    $aktionen[1] = "Msg" ;Flag, Titel und Test durch GUICtrlRead
    $aktionen[2] = "Exit"

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

    For $i = $aktionengesamt In $aktionen
    If StringInStr($aktionen[$aktionengesamt], "Run") = Not 0 Or 1 Then
    Run(GUICtrlRead($runpath)
    EndIf
    Next

    [/autoit]

    Meine fertigen Projekte:
    VirtualCash
    Monopoly Digital

    Daran arbeite ich gerade:
    Einem Skript, womit man ohne Programmierkentisse eigene Programme machen kann (habe ich selber früher gesucht :D ) Stand: ||||||||||||||||||||||||| 6%

  • Hi,
    so meine ich das:

    Spoiler anzeigen
    [autoit]

    Local $aAufgaben[3]

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

    $aAufgaben[0] = "MsgBox; 16,Titel,Hallo Welt"
    $aAufgaben[1] = "ConsoleWrite; Das ist Ein Konsolentext"
    $aAufgaben[2] = "Exit; 10"

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

    For $Aufgabe In $aAufgaben
    $sBefehl = StringSplit($Aufgabe, ";", 2) ;Den Befehl abtrennen
    Switch $sBefehl[0]
    Case "MsgBox"
    $aParameter = StringSplit($sBefehl[1], ",", 2)
    MsgBox($aParameter[0], $aParameter[1], $aParameter[2])
    Case "ConsoleWrite"
    ConsoleWrite($sBefehl[1] & @CRLF)
    Case "Exit"
    Exit $sBefehl[1]
    EndSwitch
    Next

    [/autoit]