Aus der Listbox in Zeilen auslesen

  • Hey leute :P
    Meine frage ist : Man kan die Listbox in Zeilen aufteilen ist ja klar :P bloß das jede zeile eine andere Funktion hat wie könnte das gehen ? Also man hat einen Button und eine ListBox man klickt auf eine Zeile da steht bla bla und auf dem button download so zeile anklicken dann auf download und die datei läd sich herunter :P


    [autoit]

    #include <ButtonConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    #Region ### START Koda GUI section ### Form=
    $Form1 = GUICreate("Dateien Downloader", 242, 65, 192, 124)
    $Button1 = GUICtrlCreateButton("Download", 8, 8, 227, 49)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Button1
    InetGet("http://www.mozilla.org/xyz.exe", "Datei.exe")
    MsgBox(0,"Info","Download abgeschlossen...")
    EndSwitch
    Wend

    [/autoit]

    Das jetzt mit einer Listbox verbinden halt das mit den Zeilen ist das möglich ?

    2 Mal editiert, zuletzt von Xentus (5. November 2011 um 18:44)

  • Wenn in der ListView die Adresse der Datei steht, kannst du doch einfach das ausgewählten Item auslesen, und in INetGet einfügen. Oder steht da etwas drin wie "Schnell", "langsam", etc?

    Bitte genauere Infos.

    Wenn es unterschiedliche Dinge sind könntest du parallel zum ListView ein Array erstellen indem bestimmte Aktionen drinstehen, die dann ausgeführt werden.

    Beispiel:
    $aFunctions[0] <- Index 0 des Arrays $aFunctions mit der Funktion die bei Auswahl ListView Item 1 ausgeführt werden soll (Array 0-basierend, Anzahl 1-basierend)

  • Wenn man einen Dateiendownloader erstellen will mit einer List steht da nicht besonders oft nur die andresse drinnen sagen wir mal da steht Blabla drinnen die zeile klickt man und drückt dann auf den Download button . Also man könnte doch eigentlich die Listbox aufteilen mit geraden Strichen und das ganze mit If machen ?

  • Doppel Post hier erlaubt ?

    Also so hätte ich mir es c.a Vorgestellt :

    [autoit]

    #include <GUIConstants.au3>

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

    #Region ### START Koda GUI section ### Form=
    $Form2 = GUICreate("ListBoxTestx", 251, 128, 482, 161)
    $List1 = GUICtrlCreateList("Download", 8, 8, 145, 110)
    $Button1 = GUICtrlCreateButton("Download", 168, 8, 75, 25, 0)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Button1
    If $List1 = ("Download") then
    InetGet("http://www.mozilla.org/xyz.exe", "Datei.exe")
    MsgBox(0,"Info","Download abgeschlossen...")
    EndIf

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

    EndSwitch
    WEnd

    [/autoit]


    Bloß klappt es noch nicht so ganz :P Muss noch was in der If schleife verändert werden ! Was denn ? Und wie macht man nochmal die Ganz geraden Striche ? List 1 sollte dann in ganz viele Downloads aufgeteilt sein

  • Doppel Post hier erlaubt ?


    Doppelposts sind unerwünscht.

    ändere

    [autoit]

    If $List1 = ("Download") then

    [/autoit]

    in

    [autoit]

    If GuiCtrlRead($List1) = ("Download") then

    [/autoit]

    ich würde an deiner Stelle die Listbox gegen eine Listview tauschen ein kleines Beispiel siehst du hier: https://autoit.de/index.php?page…98920#post98920 . Die Informationen für die Items solltest du natürlich aus ein CSV- oder INI-Datei auslesen.

    Edit: bin gerade am schreiben eines Beispiel-Downloaders, werde ihn später in Skripte veröffentlichen.

    mfg autoBert

    2 Mal editiert, zuletzt von autoBert (4. November 2011 um 08:05)

  • Mach die if abfrage so dann funktioniert sie auch wie du willst ;)

    [autoit]

    If GUICtrlRead($List1) = "Download" Then

    [/autoit]

    Welchen geraden Strich meinst du?

    Doppelposts eher vermeiden. Man kann ja seinen letzten Post bearbeiten ;)

  • Zitat von Schnitzel

    Welchen geraden Strich meinst du?

    Ich denke er meint | aber das wird doch allgemein als Trennzeichen bei erstellen eines ListView benutzt, also entstehen einzelne Spalten. (Essen | Preis z.B.)