Problem mit GUI

  • Hi Leute,
    habe ein Problem , oder besser 2 Probleme mit dem GUI

    Spoiler anzeigen
    [autoit]

    #include <GUIConstants.au3>

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

    #Region ### START Koda GUI section ### Form=
    $Form1 = GUICreate("Form1", 316, 135, 193, 125)
    $Button1 = GUICtrlCreateButton("Prozess hinzufügen", 24, 16, 105, 41, 0)
    $Button2 = GUICtrlCreateButton("Prozess löschen", 24, 72, 105, 41, 0)
    $List1 = GUICtrlCreateList("", 144, 16, 145, 97)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###
    $readPro =IniReadSection ("rolf.txt","PROCESS")
    GUICtrlSetData ($List1,StringFormat($readPro))
    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Button1
    $ProAdd = InputBox ("Prozess hinzufügen","Geben Sie ihren Prozess ein der zur Liste hinzugefügt werden soll.","Geben Sie einen Prozess ein.")
    GUICtrlSetData($List1,StringFormat($ProAdd,$ProAdd))
    IniWrite ("rolf.txt","PROCESS",$ProAdd,1)
    case $Button2
    $ProDel = InputBox ("Prozess löschen","Geben Sie ihren Prozess ein der von der Liste gelöscht werden soll.","Geben Sie hier ihren Prozess ein.")
    IniDelete ("rolf.txt","PROCESS",$ProDel)
    EndSwitch
    WEnd

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

    Also das soll ein Prog sein das Auf Knopfdruck einen Prozess zur liste/.txt hinzufügen soll, das klappt auch soweit ganz gut aber der andere Button
    sollte eig einen Prozess von der Liste/.txt löschen. Aus der .txt löscht er auch den Prozess aber ich habe keine Idee wie er den Prozess aus der Liste löschen soll?
    Und da habe ich noch ein Problem:
    Mein Programm soll am Anfang alle Prozesse die bereits in der Textdatei stehen lesen und diese dann in die Liste eintragen. Im Quellcode könnt ihr ja sehen wie ich es probiert habe.

    Hoffe auf gute &nd schnelle Antworten

    MfG Rakehunt

    • Offizieller Beitrag

    Also IniReadSection liefert ein 2D-Array zurück. Das Beispiel aus der Hilfe zeigt das doch recht deutlich.

    Aber was viel interessanter ist, ist was Du von StringFormat erwartest? ^^

    Diese beiden Befehle solltest Du Dir mal genauer anschauen. Dann noch lernen, was ist ein Array und Du kannst Dein Script vollenden. :)

  • ich denke mal das lieg hier dran :

    Spoiler anzeigen
    [autoit]

    #include <GUIConstants.au3>

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

    #Region ### START Koda GUI section ### Form=
    $Form1 = GUICreate("Form1", 316, 135, 193, 125)
    $Button1 = GUICtrlCreateButton("Prozess hinzufügen", 24, 16, 105, 41, 0)
    $Button2 = GUICtrlCreateButton("Prozess löschen", 24, 72, 105, 41, 0)
    $List1 = GUICtrlCreateList("", 144, 16, 145, 97)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###
    $readPro =IniReadSection ("rolf.txt","PROCESS")
    GUICtrlSetData ($List1,StringFormat($readPro))
    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Button1
    $ProAdd = InputBox ("Prozess hinzufügen","Geben Sie ihren Prozess ein der zur Liste hinzugefügt werden soll.","Geben Sie einen Prozess ein.")
    GUICtrlSetData($List1,StringFormat($ProAdd,$ProAdd))
    IniWrite ("rolf.txt","PROCESS",$ProAdd,1)
    case $Button2
    $ProDel = InputBox ("Prozess löschen","Geben Sie ihren Prozess ein der von der Liste gelöscht werden soll.","Geben Sie hier ihren Prozess ein.")
    IniDelete ("rolf.txt","PROCESS",$ProDel); ersetze 4pordel durch $Proadd denn das willste ja löschen odder nicht ?
    EndSwitch
    WEnd

    [/autoit]