1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Mitglieder
  3. Tweaky

Beiträge von Tweaky

  • Zwei Labelinhalte stehen übereinander weil sie transparent sind

    • Tweaky
    • 8. Mai 2007 um 17:58

    Ich habe das Problem, dass bei Änderung des Labelinhalts diese Text übereinander stehen und ich sie nicht lesen kann, da sie transparent sind.

    Spoiler anzeigen
    [autoit]

    ;au3-Scripte, Bilder und Icons werden direkt in die exe-Datei übernommen und später beim ausführen in den @TempDir entpackt
    #include <GuiListView.au3>
    #include <GuiList.au3>
    #include <GUIConstants.au3>
    #Include <File.au3>
    #Include <Array.au3>

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

    Dim $Fehler1, $Fehler2, $Fehler3, $Quellordner, $Zielordner, $zielordner_korrekt, $quellordner_korrekt

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

    ;Standardpfad hier auswählen
    $Standard = "D:\Test\" ;Quellpfad
    $Standard2 = "D:\Ziel\" ;Zielpfad

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

    ;------------------------
    ;GUI
    ;------------------------
    ;GUI erzeugen
    GUICreate("Foto - Video - Tool", 460, 900, $WS_EX_ACCEPTFILES)

    ;Buttons
    $Quelle = GUICtrlCreateButton("Quellordner auswählen", 250, 320, 50, 50, $BS_ICON)

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

    ;Beschriftung erstellen
    GUICtrlCreateLabel(" Quellordner auswählen", 310, 335, -1, -1, bitOR($WS_BORDER, $SS_CENTERIMAGE))
    GUICtrlSetBkColor(-1, 0xD3D3D3)

    ;Beschriftung
    GUICtrlCreateLabel(" aktueller Quellpfad:", 10, 10, 440, -1, $SS_CENTERIMAGE)
    GUICtrlSetBkColor(-1, 0xFFD700)

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

    ;Quellordner öffnen
    _Quellordner()

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

    ;GUI anzeigen
    GUISetState()

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

    ;------------------------
    ;Drücken eines Buttons
    ;------------------------
    While 1
    $msg = GUIGetMsg()
    Select

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

    Case $msg = $Quelle
    _Quellordner()

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

    Case $msg = $GUI_EVENT_CLOSE
    Exit
    EndSelect
    WEnd

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

    ;------------------------
    ;Funktionen
    ;------------------------

    ;Quellordner auswählen
    Func _Quellordner()

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

    ;~ _GUICTRLListViewDeleteAllItems($listview)
    $Quellordner = FileSelectFolder("Bitte den Quellordner auswählen", "", "", $Standard) & "\"
    GUICtrlCreateLabel(" ", 110, 10, 330, -1, $SS_CENTERIMAGE)
    ;~ GUICtrlSetData ($xyz, ,$GUI_HIDE)

    GUICtrlSetData (-1, $Quellordner)
    GUICtrlSetBkColor(-1, $GUI_BKCOLOR_TRANSPARENT)
    EndFunc ;==>_Quellordner

    [/autoit]

    Dies ist der betreffende Teil.
    Wenn ein anderes Quellordner gewählt wird, soll dieses in das Label Feld geschrieben werden.
    Die Hintergrundfarbe des Textes Quellordner" läuft ganz nach rechts durch.
    Über dieser Hintergrundfarbe steht der Quellordner. Daher muß dieser Text auch transparent sein.

    EDIT:
    Hab mal mein Script stark gekürzt, damit man es testen kann.

  • Icon der Exe in das Script

    • Tweaky
    • 8. Mai 2007 um 16:43

    Danke an auch beide :D

  • Icon der Exe in das Script

    • Tweaky
    • 7. Mai 2007 um 23:34

    Hi,
    ich habe ne kleine Fragen an euch ?(

    Ich kann ja ein Script kompilieren und dabei das Icon angeben. Soweit so gut.
    Gibt es auch die Möglichkeit in das Script eine Zeile einzufügen, die dieses Icon schon enthält und ich nur noch auf "compilie" klicken muß und automatisch dieses Icon verwendet wird?

    Dürfte für euch kein Problem darstellen :D

    danke :)

  • Vorschaubild anzeigen

    • Tweaky
    • 3. Mai 2007 um 22:43

    ja das war der "Fehler",
    habe aber gedacht dieser "$LVS_SORTDESCENDING" wäre nur für das Sortieren zuständig

  • Vorschaubild anzeigen

    • Tweaky
    • 3. Mai 2007 um 22:26

    hm, irgendwie kann ich jetzt nur noch ein Eintrag in der ListView markieren. Mehr als einer geht nicht.
    Hab die Dateien bereits verglichen. Aber nix gefunden

  • Vorschaubild anzeigen

    • Tweaky
    • 3. Mai 2007 um 22:16
    Zitat

    Original von th.meger
    P.S.: Da geht aber allgemein sicher einiges noch besser. ;)


    jetzt machst du mich aber neugierig ...

  • Vorschaubild anzeigen

    • Tweaky
    • 3. Mai 2007 um 22:04

    Oh mei oh mei,
    ich kann ich dir sagen,
    einfach perfekt :klatschen:

    Auf solch eine Idee wäre ich nie gekommen.
    Muß ich mir nochmal genauer anschauen, was du da wieder gezaubert hast.

    Wie immerTausend Dank

  • Vorschaubild anzeigen

    • Tweaky
    • 3. Mai 2007 um 21:53

    Oh, man, hab das die ganze Zeit mit $B_ASCENDING rumprobiert.
    Aber scheinbar gibt es dies nicht :irre:

    ne 2. GUI hab ich nun hinbekommen, aber leider nicht das aktuell angeklickte Bild :weinen:

  • Vorschaubild anzeigen

    • Tweaky
    • 3. Mai 2007 um 20:11

    Ups, gar nicht dran gedacht.

    image_get_info.au3
    http://www.autoitscript.com/fileman/users/Lazycat/udfs.html

    _ArrayDisplay2D.au3
    _ArraySort_2ary.au3
    sind von BugFix, hast du die?


    EDIT: @th.meger
    falls es dir nichts ausmacht und du Zeit hast, kannst du bitte noch folgendes schauen: wie ich es schaffe, das die Einträge in der Filelist nach Datum sortieren kann, allerdings andersrum wie jetzt.
    Die Einträge für das Sortieren habe ich drinnen, nur funktioniert das Sortieren eben nur in eine Richtung :hammer:.

  • Vorschaubild anzeigen

    • Tweaky
    • 3. Mai 2007 um 19:42

    Hi,
    danke, dass du mir hilfst

    Hier ist der ganze Code

    Spoiler anzeigen
    [autoit]

    #include <GuiListView.au3>
    #include <GuiList.au3>
    #include <GUIConstants.au3>
    #Include <File.au3>
    #Include <Array.au3>
    #include <_ArrayDisplay2D.au3>
    #include <_ArraySort_2ary.au3>
    #include "image_get_info.au3"

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

    Dim $Fehler1, $Fehler2, $Fehler3, $Pfad

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

    ;Standardpfad hier auswählen
    $Standard = "D:\Test\"
    $Standard2 = "D:\Ziel\"

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

    ;------------------------------------------------------------------------------------------------
    ;umbenennen
    $ersetzen1 = "IMG" ;Quellfotos "IMG"
    $Dateiart1 = "JPG" ;Quellfotos Typ "JPG"
    $ersetzen2 = "MVI" ;Quellvideos "MVI"
    $Dateiart2 = "AVI" ;Quellvideos Typ "AVI"
    $Dateiart3 = "THM" ;Quellvideos Typ "THM"
    ;------------------------------------------------------------------------------------------------

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

    ;------------------------
    ;GUI
    ;------------------------
    ;GUI erzeugen
    GUICreate("Fotos übertragen", 500, 900,$WS_EX_ACCEPTFILES)

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

    ;Buttons
    $Quellordner = GUICtrlCreateButton("Quellordner auswählen", 300, 300)
    $kopieren = GUICtrlCreateButton("Kopieren", 300, 350)
    $umbenennen = GUICtrlCreateButton("umbenennen", 300, 400)
    $Kategorien = GUICtrlCreateButton("Kategorien vergeben", 300, 450)
    $datum = GUICtrlCreateButton("Datum zurücksetzen", 300, 500)
    $beenden = GUICtrlCreateButton("Beenden", 300, 550)

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

    ;Beschriftung
    GUICtrlCreateLabel("aktueller Quellpfad:", 300, 10)
    GUICtrlCreateLabel("aktueller Zielpfad:", 300, 30)

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

    ;Liste mit Dateien
    $listview = GuiCtrlCreateListView ("Bild|Datum",10,10,230,850, $LVS_SORTASCENDING);$LVS_SORTDESCENDING ;$LVS_SORTASCENDING

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

    ;?????????????
    GUICtrlSendMsg($listview, $LVM_SETEXTENDEDLISTVIEWSTYLE, $LVS_EX_GRIDLINES, $LVS_EX_GRIDLINES)
    GUICtrlSendMsg($listview, $LVM_SETEXTENDEDLISTVIEWSTYLE, $LVS_EX_FULLROWSELECT, $LVS_EX_FULLROWSELECT)

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

    ;Klappliste für das Umbenennen der Dateien
    $Klappen = GUICtrlCreateCombo ("FH", 300, 250, 50); erster Eintrag
    GUICtrlSetData(-1,"DF", "FH") ;weitere Einträge, getrennt durch | , zweiter Eintrag ist der Standard

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

    ;Spaltenbreite für die erste Spalte festlegen
    _GUICtrlListViewSetColumnWidth ($listview, 0, 100)

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

    ;------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;------------------------
    ;sonstiges
    ;------------------------
    ;Quellordner öffnen
    _Quellordner()

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

    ;Größe des Arrays anhand von vorhandenen Dateien einstellen
    $anzahl = DirGetSize($Pfad, 3)
    DIM $neu[$anzahl[1]+1][2]

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

    ;Array ($Filelist) erzeugen (nur Dateinamen)
    $FileList = _FileListToArray($Pfad)

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

    ;Array ($neu) erzeugen (Dateinamen von $Filelist und Datum)
    For $i = 1 To UBound($FileList)-1
    $neu[$i][0] = $FileList[$i]
    $time2 = FileGetTime($Pfad & $FileList[$i], 0)
    $neu[$i][1] = $time2[0]& $time2[1] & $time2[2] & $time2[3] & $time2[4] & $time2[5]
    Next

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

    ;Array sortieren nach Datum
    _ArraySort_2ary($neu,1,0)
    ;_ArrayDisplay2D($neu,"$neu")

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

    ;GUI anzeigen
    GUISetState()

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

    ;Einträge für ListView vornehmen (Datei und Datum)
    For $i = 1 To UBound($FileList)-1
    $time2 = FileGetTime($Pfad & $FileList[$i], 0)
    $video2 = $time2[0] & "." & $time2[1] & "." & $time2[2] & " " & $time2[3] & "." & $time2[4] & "." & $time2[5]
    GUICtrlCreateListViewItem($FileList[$i] & "|" & $video2, $listview)
    Next

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

    ;Einträge vom ListView sortieren
    Dim $B_DESCENDING[_GUICtrlListViewGetSubItemsCount ($listview) ];$B_DESCENDING
    _GUICtrlListViewSort($listview, $B_DESCENDING, 1); $B_DESCENDING

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

    ;------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;------------------------
    ;Drücken eines Buttons
    ;------------------------
    While 1
    $msg = GUIGetMsg()
    Select
    ;Button Quellordner
    Case $msg = $Quellordner
    _Quellordner()

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

    ;Button Umbenennen
    Case $msg = $umbenennen
    SplashTextOn("Start des Umbenennens", "Die Foto und Videodateien werden umbenannt", 350, 30, -1, -1)
    $neu1 = GUICtrlRead($Klappen)
    _Foto()
    _Video1()
    _Video2()
    _Pruefung()

    ;Button Kopieren
    Case $msg = $kopieren
    $Zielordner = FileSelectFolder("Bitte den Pfad auswählen", "" ,"", $Standard2) & "\"

    ;Zielordner anzeigen
    GUICtrlCreateLabel($Zielordner, 400, 30)

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

    Local $test = _GUICtrlListViewGetSelectedIndices($listview,1)
    If(IsArray($test))Then
    Local $i
    ;_ArrayDisplay($test,"$test")
    ;_ArrayDisplay2D($neu,"$neu")
    For $i = 1 To $test[0]
    FileCopy($Pfad & $neu[$test[$i]+1][0], $Zielordner, 1)
    Next
    Else
    EndIf

    ;Button Datum ändern
    Case $msg = $datum
    _exif()

    ;Button Beenden
    Case $msg = $beenden
    Exit

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

    ;~ Case $msg = $listview
    ;~ ; sort the list by the column header clicked on
    ;~ _GUICtrlListViewSort($listview, $B_DESCENDING, GUICtrlGetState($listview))

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

    ;Bildvorschau anzeigen
    Case $msg = $GUI_EVENT_PRIMARYDOWN
    $pos = GUIGetCursorInfo()
    If ($pos[4] == $listview) Then
    $wo = _GUICtrlListViewGetItemText($listview, _GUICtrlListViewGetSelectedIndices($listview), 0)
    GUICtrlCreatePic ($pfad & $wo, 300, 80)
    EndIf
    EndSelect
    Wend
    ;------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;------------------------
    ;Funktionenen
    ;------------------------

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

    ;Quellordner auswählen
    Func _Quellordner()
    $Pfad = FileSelectFolder("Bitte den Pfad auswählen", "" ,"", $Standard) & "\"
    GUICtrlCreateLabel(" ", 400, 10)
    GUICtrlCreateLabel($Pfad, 400, 10)
    EndFunc

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

    ;umbenennen
    ;Teil1 Prüfung, Fotofiles umbenennen
    Func _Foto()
    $Fehler1 = 0
    $FileList1 = _FileListToArray($Zielordner, $ersetzen1 & "_*." & $Dateiart1, 1)
    If @Error=1 Then
    MsgBox (0,"Ordner nicht vorhanden","Bitte überprüfen")
    Exit
    EndIf
    If @Error=4 Then
    $Fehler1 = 1
    Return
    EndIf

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

    For $i = 1 To UBound($FileList1)-1
    $Foto1 = StringReplace($FileList1[$i], $ersetzen1, $neu1)
    FileMove($Zielordner & $FileList1[$i], $Zielordner & $Foto1)
    Next
    EndFunc

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

    ;Teil2 Prüfung, Videofiles umbenennen
    Func _Video1()
    $Fehler2 = 0
    $FileList2 = _FileListToArray($Zielordner, $ersetzen2 & "_*." & $Dateiart2, 1)
    If @Error=4 Then
    $Fehler2 = 1
    Return
    EndIf

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

    For $i = 1 To UBound($FileList2)-1
    $time2 = FileGetTime($Zielordner & $FileList2[$i], 0)
    $video2 = $time2[0] & "." & $time2[1] & "." & $time2[2] & " " & $time2[3] & "." & $time2[4] & "." & $time2[5] & "_" & $neu1
    FileMove($Zielordner & $FileList2[$i], $Zielordner & $video2 & "." & $Dateiart2)
    Next
    EndFunc

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

    ;Teil3 Prüfung, Videofiles umbenennen
    Func _Video2()
    $Fehler3 = 0
    $FileList3 = _FileListToArray($Zielordner, $ersetzen2 & "_*." & $Dateiart3, 1)
    If @Error=4 Then
    $Fehler3 = 1
    Return
    Else
    EndIf

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

    For $i = 1 To UBound($FileList3)-1
    $time3 = FileGetTime($Zielordner & $FileList3[$i], 0)
    $video3 = $time3[0] & "." & $time3[1] & "." & $time3[2] & " " & $time3[3] & "." & $time3[4] & "." & $time3[5] & "_" & $neu1
    FileMove($Zielordner & $FileList3[$i], $Zielordner & $video3 & "." & $Dateiart3)
    Next
    EndFunc

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

    ;Teil4 Prüfung, ob überhaupt Dateien existieren
    Func _Pruefung()
    SplashOff()
    If ($Fehler1 + $Fehler2 + $Fehler3 = 3) Then
    MsgBox (0,"Keine Dateien vorhanden","Bitte überprüfen")
    Else
    EndIf
    EndFunc

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

    ;Exif-Datum als Dateidatum setzen
    Func _exif()
    $jpg = _FileListToArray($Zielordner, "*.jpg")

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

    SplashTextOn("Datum der .jpg Dateien wird korrigiert", "Bitte warten", 250, 30, -1, -1)

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

    If @Error=4 Then
    MsgBox (0,"falscher Ordner?","Keine Dateien vorhanden")
    Exit
    EndIf

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

    For $i = 1 To UBound($jpg)-1
    $aInfo = _ImageGetInfo($Zielordner & $jpg[$i])
    $exif = _ImageGetParam($aInfo, "DateTimeDigitized")

    $jahr = StringMid ($exif, 1, 4)
    $monat = StringMid ($exif, 6, 2)
    $tag = StringMid ($exif, 9, 2)
    $stunde = StringMid ($exif, 12, 2)
    $minute = StringMid ($exif, 15, 2)
    $sekunde = StringMid ($exif, 18, 2)
    $datum = $jahr & $monat & $tag & $stunde & $minute & $sekunde

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

    FileSetTime($Zielordner & $jpg[$i], $datum, 0)
    FileSetTime($Zielordner & $jpg[$i], $datum, 1)
    Next

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

    SplashOff()
    EndFunc

    [/autoit]
  • Vorschaubild anzeigen

    • Tweaky
    • 3. Mai 2007 um 16:31

    kann ich 2 GUI parallel offen haben?
    Wenn ich eine zweite erstelle, sehe ich nur diese.

    Habs mal so probiert

    [autoit]

    Case $msg = $GUI_EVENT_PRIMARYDOWN
    $pos = GUIGetCursorInfo()
    If ($pos[4] == $listview) Then
    $wo = _GUICtrlListViewGetItemText($listview, _GUICtrlListViewGetSelectedIndices($listview), 0)
    GUICtrlCreatePic ($pfad & $wo, 300, 10)
    EndIf

    [/autoit]

    Leider stimmt die Vorschau nicht immer mit dem richtigen Bild überein.
    Manchmal muß ich mehrmals auf den Eintrag klicken, damit das richtige Bild kommt.

    Es wäre mir am liebsten, wenn ich mit den Pfeiltasten die Liste durchfahren könnte und dann das richtige Bild kommt, doch leider passiert dabei nichts :weinen:

  • Vorschaubild anzeigen

    • Tweaky
    • 3. Mai 2007 um 15:02

    Hi, wie kann ich in einer GUI ein Vorschaubild anzeigen lassen.

    Ich wähle aus einem ListView eine oder mehrere Dateien aus.
    Dann soll die erste Datei das Vorschaubild der jpg-Datei anzeigen.

    Wenn ich einen anderen Eintrag der ListeView anklicke, soll dieses Bild angezeigt werden.

    Ist dies möglich?

    Danke ;)

  • Dateien auswählen und kopieren über eine GUI?

    • Tweaky
    • 1. Mai 2007 um 23:46

    Danke, habs jetzt auch in der Hilfe gefunden. Wußte bis jetzt nicht, wo ich schauen soll :irre:

    Sodele,
    so langsam wirds. Habe es geschafft das Datum und den Namen ins Array zu bekommen.

    Habs jetzt nach dem Namen Datum sortiert bekommen. Funktioniert nun.

    Danke :musik2:

    Spoiler anzeigen
    [autoit]

    #include <GuiListView.au3>
    #include <GuiList.au3>
    #include <GUIConstants.au3>
    #Include <File.au3>
    #Include <Array.au3>
    #include <_ArrayDisplay2D.au3>
    #include <_ArraySort_2ary.au3>

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

    ;Standardpfad hier auswählen
    $Standard = "D:\Test\"
    $Standard2 = "D:\Ziel\"

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

    GUICreate("Fotos übertragen", 1000, 300,$WS_EX_ACCEPTFILES)

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

    $kopieren = GUICtrlCreateButton("Kopieren", 10, 200)
    $umbenennen = GUICtrlCreateButton("umbenennen", 150, 200)
    $Kategorien = GUICtrlCreateButton("Kategorien vergeben", 300, 200)
    $datum = GUICtrlCreateButton("Datum zurücksetzen", 450, 200)
    $beenden = GUICtrlCreateButton("Beenden", 600, 200)
    GUICtrlCreateLabel("aktueller Quellpfad:", 10, 10)
    GUICtrlCreateLabel("aktueller Zielpfad:", 200, 10)

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

    $listview = GuiCtrlCreateListView ("Bild|Datum",10,40,250,150, $LVS_SORTDESCENDING);$LVS_SORTDESCENDING ;$LVS_SORTASCENDING

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

    GUICtrlSendMsg($listview, $LVM_SETEXTENDEDLISTVIEWSTYLE, $LVS_EX_GRIDLINES, $LVS_EX_GRIDLINES)
    GUICtrlSendMsg($listview, $LVM_SETEXTENDEDLISTVIEWSTYLE, $LVS_EX_FULLROWSELECT, $LVS_EX_FULLROWSELECT)

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

    _GUICtrlListViewSetColumnWidth ($listview, 0, 100)

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

    $Pfad = FileSelectFolder("Bitte den Pfad auswählen", "" ,"", $Standard) & "\"

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

    GUICtrlCreateLabel($Pfad, 110, 10)

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

    ;Größe des Arrays anhand von vorhandenen Dateien
    $anzahl = DirGetSize($Pfad, 3)
    DIM $neu[$anzahl[1]+1][2]

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

    $FileList = _FileListToArray($Pfad)

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

    For $i = 1 To UBound($FileList)-1
    $neu[$i][0] = $FileList[$i]
    $time2 = FileGetTime($Pfad & $FileList[$i], 0)
    $neu[$i][1] = $time2[0]& $time2[1] & $time2[2] & $time2[3] & $time2[4] & $time2[5]
    Next

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

    _ArraySort_2ary($neu,1,0)
    _ArrayDisplay2D($neu,"$neu")
    GUISetState()

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

    For $i = 1 To UBound($FileList)-1
    $time2 = FileGetTime($Pfad & $FileList[$i], 0)
    $video2 = $time2[0] & "." & $time2[1] & "." & $time2[2] & " " & $time2[3] & "." & $time2[4] & "." & $time2[5]
    GUICtrlCreateListViewItem($FileList[$i] & "|" & $video2, $listview)
    Next

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

    Dim $B_DESCENDING[_GUICtrlListViewGetSubItemsCount ($listview) ]
    _GUICtrlListViewSort($listview, $B_DESCENDING, 1)
    While 1
    $msg = GUIGetMsg()
    Select
    Case $msg = $umbenennen

    Case $msg = $kopieren
    $Zielordner = FileSelectFolder("Bitte den Pfad auswählen", "" ,"", $Standard2) & "\"

    ;Zielordner anzeigen
    GUICtrlCreateLabel($Zielordner, 310, 10)

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

    Local $test = _GUICtrlListViewGetSelectedIndices($listview,1)
    If(IsArray($test))Then
    Local $i

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

    For $i = 1 To $test[0]
    FileCopy($Pfad & $neu[$test[$i]+1][0], $Zielordner, 1)
    Next
    Else
    EndIf

    Case $msg = $beenden
    Exit
    EndSelect
    Wend

    [/autoit]
  • Dateien auswählen und kopieren über eine GUI?

    • Tweaky
    • 1. Mai 2007 um 21:49

    Hm, ich hab ja den Befehl drinnen, bei dem die Liste automatisch sortiert wird

    [autoit]

    $listview = GuiCtrlCreateListView ("Bild|Datum",10,10,310,150, $LVS_SORTDESCENDING)

    [/autoit]


    Leider ist dies absteigend. Gibts dafür auch aufsteigend?

  • Dateien auswählen und kopieren über eine GUI?

    • Tweaky
    • 1. Mai 2007 um 11:56

    Hi BugFix
    die Dateien sollen links marktiert werden
    rechts wähle ich den Zielordner aus
    dann Knopf drücken
    dann werden die Dateien vom linken Ordner in den rechten Ordner kopiert

    EDIT:
    So, hab mal angefangen. Es wird nun die korrekte Anzahl von ausgewählten Dateien kopiert. Allerdings nicht genau ide, die ich makriert habe :weinen: :weinen: :weinen:

    Wie kann ich in einem ListView die Einträge aufsteigend sortieren. Für absteigend weiss ich es.

    Spoiler anzeigen
    [autoit]

    #include <GuiListView.au3>
    #include <GuiList.au3>
    #include <GUIConstants.au3>
    #Include <File.au3>
    #Include <Array.au3>

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

    ;Standardpfad hier auswählen
    $Standard = "D:\Test\"
    $Standard2 = "D:\Ziel\"

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

    GUICreate("Fotos übertragen", 1000, 300,$WS_EX_ACCEPTFILES)

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

    $kopieren = GUICtrlCreateButton("Kopieren", 10, 200)
    $umbenennen = GUICtrlCreateButton("umbenennen", 150, 200)
    $Kategorien = GUICtrlCreateButton("Kategorien vergeben", 300, 200)
    $datum = GUICtrlCreateButton("Datum zurücksetzen", 450, 200)
    $beenden = GUICtrlCreateButton("Beenden", 600, 200)

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

    $listview = GuiCtrlCreateListView ("Bild|Datum",10,10,310,150, $LVS_SORTDESCENDING)

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

    $Pfad = FileSelectFolder("Bitte den Pfad auswählen", "" ,"", $Standard) & "\"
    $FileList = _FileListToArray($Pfad)

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

    GUISetState()

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

    For $i = 1 To UBound($FileList)-1
    GUICtrlCreateListViewItem($FileList[$i], $listview)
    Next

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

    While 1
    $msg = GUIGetMsg()
    Select
    Case $msg = $umbenennen

    Case $msg = $kopieren
    $Zielordner = FileSelectFolder("Bitte den Pfad auswählen", "" ,"", $Standard2) & "\"
    Local $test = _GUICtrlListViewGetSelectedIndices($listview,1)
    If(IsArray($test))Then
    Local $i
    For $i = 1 To $test[0]
    MsgBox(0,"Selected", $test[$i])
    FileCopy($Pfad & $FileList[$i], $Zielordner, 1)
    Next
    Else
    EndIf

    Case $msg = $beenden
    Exit

    EndSelect
    Wend

    [/autoit]
  • Dateien auswählen und kopieren über eine GUI?

    • Tweaky
    • 1. Mai 2007 um 11:39

    Hab die Gui erstellt, allerdings mit ListView statt Treeview, da ich dort mehrere Dateien markieren kann.
    Wie ich die markierten Dateien kopieren kann, weiß auch noch nicht :weinen:

  • Dateien auswählen und kopieren über eine GUI?

    • Tweaky
    • 1. Mai 2007 um 11:11

    Hi,
    ich würde gerne eine GUI erstellen.

    Dabei soll links ein Fenster sein, wo der Ordnerinhalt eines bestimmten Ordners auflistet wird.
    Ich markiere bestimmte Dateien in diesem Ordner.
    Dann klicke ich einen Button.
    Dann werden die Dateien in das rechte Fenster in den ausgewählten Ordner kopiert.

    Geht dies irgendwie?

  • User-Taste bei Logitech Tastatur

    • Tweaky
    • 29. April 2007 um 11:54

    Moin,
    jo die Software ist installiert.
    Nur will ich dieo Sondertasten ja nutzen.
    Nur soll es als Standard die F-Tasten aktiviert sein, da ich diese mehr nutze ;)

  • User-Taste bei Logitech Tastatur

    • Tweaky
    • 28. April 2007 um 23:48

    Hi,
    ich habe eine schon etwas ältere Logitech Tastatur (Access Keyboard) mit PS/2 Anschluss.
    Bei dieser kann man die F-Tasten noch mit "anderen Befehlen" frei belegen.

    Was mich stört, ist, dass bei jedem Windows-Start die F-Tasten deaktiviert sind und statt dessen "anderen Befehle" aktiv sind.

    Ich habe im Netz gelesen, dass nur USB-Tasturen die Einstellung der "User-Taste" speichern. Also ob die F-Tasten oder die "anderen Befehlen" aktiv sind.

    Ich habe mir überlegt, ob ich durch ein Script die F-Tasten bei jedem Windows-Start aktiviere. Nur müßte ich dazu wissen, wie die "User-Taste" heißt, damit es mit AutoIt funktioniert.

    Hat jemand bereits Erfahrung damit?

  • Fragen zur Datensicherung

    • Tweaky
    • 27. April 2007 um 22:38

    Hm,
    ist es eigentlich möglich mit dieser Kopierfunktion einen Ordner auszuschließen, damit dieser nicht mitkopiert wird?

    Zum kopieren habe ich diese Funktion

    [autoit]

    Func _FileCopy($fromFile,$tofile)
    DirCreate($Ziel_Pf)
    Local $FOF_RESPOND_YES = 16
    Local $FOF_SIMPLEPROGRESS = 512
    $winShell = ObjCreate("shell.application")
    $winShell.namespace($tofile).CopyHere($fromFile,$FOF_RESPOND_YES)
    EndFunc ;==>_FileCopy

    [/autoit]

Spenden

Jeder Euro hilft uns, Euch zu helfen.

Download

AutoIt Tutorial
AutoIt Buch
Onlinehilfe
AutoIt Entwickler
  1. Datenschutzerklärung
  2. Impressum
  3. Shoutbox-Archiv
Community-Software: WoltLab Suite™