Select Case

  • Hallo zusammen,

    habe heute leider einige Probleme.

    Wie kann man innerhalb eines Loops
    eine Select Anweisung einfügen?

    Folgendes sollte passieren:
    Der Loop läuft ganz normal durch, aber erst wenn man auf die Schaltfläche klickt, sollte etwas passieren.
    Zum Beispiel FileMove...

    Spoiler anzeigen
    [autoit]


    #include <File.au3>
    #include <array.au3>
    $Form1_1 = GUICreate("PDF", 530, 335, 192, 132)
    $BT1 = GUICtrlCreateButton("BT1", 216, 56, 275, 41)

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

    GUISetState(@SW_SHOW)
    Opt("WinTitleMatchMode", 2)
    Local $sPath, $aFiles, $sText
    $sPath = FileSelectFolder("Bitte Ordner auswählen","",Default,@DocumentsCommonDir)
    If @error Then Exit

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

    GUICtrlSetFont(-1, 11, 800, 0, "MS Sans Serif")

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

    $aFiles = _FileListToArray($sPath,"*.pdf",1) ; Dateien in ein Array lesen
    If @error Then Exit MsgBox(16,"Error","No files found")
    ;_ArrayDisplay($aFiles, "alle Dateien")

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

    ;hier beginnt der Loop
    For $i = 1 To UBound($aFiles)-1

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

    ShellExecute($sPath & "\"&$aFiles[$i]);Programm startet mit File

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

    Select
    Case $BT1
    MsgBox(0,$aFiles[$i],"tu was mit dieser Datei")
    EndSelect
    Next

    [/autoit]

    ich komme da leider nicht ans Ziel.

    Grüße
    Ilse ;)

  • Das Script ergibt für mich ueberhaupt keinen Sinn :D
    nur zum Verstädnis..
    > Pfad zum Pdf Ordner wird gewählt
    > Pdf Dateien geöffnet
    > und 8| nichts .. ?
    > d.h. er öffnet dir Beispielsweise 20 mal den Adobe Reader?

    Ich habe mir mal erlaubt dein Script etwas anzupassen und 'aufzuräumen' ^^ .. ,sollte ich dir jedoch darüber hinaus noch helfen sollen wäre es gut wenn du sagen würdest was du ueberhaupt machen willst :D

    Spoiler anzeigen
    [autoit]


    #include <File.au3>
    #include <GUIConstantsEx.au3>

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

    Opt("WinTitleMatchMode", 2)
    Local $sPath, $aFiles, $sText, $nMsg

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

    $Form1_1 = GUICreate("PDF", 200, 70)
    $BT1 = GUICtrlCreateButton("Start", 20, 25, 50, 20)
    $BT2 = GUICtrlCreateButton("Exit",100,25,50,20)
    ;GUICtrlSetFont(-1, 11, 800, 0, "MS Sans Serif")
    $sPath = FileSelectFolder("Bitte Ordner auswählen","",Default,@DocumentsCommonDir)
    $aFiles = _FileListToArray($sPath,"*.pdf",1) ; Dateien in ein Array lesen
    If @error Then Exit MsgBox(16,"Error","No files found")
    GUISetState(@SW_SHOW)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $BT1
    ;MsgBox(0,$aFiles[$i],"tu was mit dieser Datei")
    _read_pdf()
    Case $GUI_EVENT_CLOSE, $BT2
    Exit
    EndSwitch
    WEnd

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

    Func _read_pdf()
    ;hier beginnt der Loop
    For $i = 1 To UBound($aFiles)-1
    ShellExecute($sPath & "\"&$aFiles[$i]);Programm startet mit File
    Next
    EndFunc

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

    Gruß

  • Hallo,

    merci für die Hilfe.
    Zum besseren Verständnis, was das Script machen sollte:

    1. Man wählt den Quell-Ordner mit den pdf Dateien
    2. Eine pdf wird mit der Anwendung (Adobe, Foxit...) gestartet und angezeigt. STOP!
    3. (Nun möchte ich entscheiden "wohin" die pdf Datei verschoben wird bzw. nicht verschoben wird!
    4. Danach wird die Anwendung (Adobe...geschlossen) und die nächste pdf gestartet.

    Am besten wäre es wenn links eine TreeView wäre
    und man könnte einfach auf die Zielordner klicken.
    Aber mit TreeView habe ich noch absolut keine Erfahrung.

    Das Problem ist, ich muß sehr viele pdf Dateien
    die alle in einem Ordner liegen auf verschiedene Ordner "verteilen"(verschieben)


    Huh... ?(

    Liebe Grüße
    Ilse ;)


    Das