Guten Abend allerseits,
ich habe folgendes Problem.
Undzwar möchte ich gerne ein kleines Script erstellen welches mir hilft einen Überblick über meine Wochenberichte (Ausbildung) zu behalten und sie zu bearbeiten, neue hinzuzufügen.
Jetzt habe ich die Dateien(Exel dateien), die sich in dem Ordner Befinden bereits mit Erstelldatum und Größe (zur übersicht) in ein ListView geladen.
Nun das Problem!!
Wie kann ich z.b. ein Menü erstellen mit z.b. Bearbeiten, löschen ... wenn ich mit der rechten Maustaste ein ListView Item anklicke ?
Wie kann ich zudem z.b. ShellExecute / Run bei einem Doppelklick aufrufen ?
Hier erst einmal mein Quellcode ( Vorsicht Anfänger )
Spoiler anzeigen
;[includes]
#include <GUIConstantsEx.au3>
#include <ListViewConstants.au3>
#include <WindowsConstants.au3>
;~ Opt('MustDeclareVars', 1)
[/autoit] [autoit][/autoit] [autoit]Global $Finished = IniRead("Settings.ini", "Path", "Finished", ""), $count = 1
Dim $lol[1], $list[1], $Size[1], $Date[1]
$search = FileFindFirstFile($Finished & "\*.*")
[/autoit] [autoit][/autoit] [autoit]; Check if the search was successful
If $search = -1 Then
MsgBox(0, "Error", "No files/directories matched the search pattern")
Exit
EndIf
; Dateien im Verzeichnis $Finished finden und arrays bei jeder gefundenen Datei ReDim'en
While 1
$file = FileFindNextFile($search)
If @error Then ExitLoop
ReDim $lol[$count + 1], $list[$count + 1], $Size[$count + 1], $Date[$count + 1]
$lol[$count] = $file
$count += 1
WEnd
; Dateigröße der gefunden Dateien ermitteln
For $i = 1 To UBound($lol) - 1
$Size[$i] = FileGetSize($Finished & "\" & $lol[$i])
Next
;Erstelldatum ermitteln und in DD.MM.YYYY umwandeln
For $i = 1 To UBound($lol) - 1
$Date[$i] = FileGetTime($Finished & "\" & $lol[$i], 1, 1)
$new = StringTrimRight($Date[$i], 6)
$Date[$i] = StringRight($new, 2) & "." & StringTrimLeft(StringLeft($new, 6), 4) & "." & StringTrimRight($new, 4)
Next
; Close the search handle
FileClose($search)
_Gui()
[/autoit] [autoit][/autoit] [autoit]Func _Gui()
Local $hGui, $listview, $item1, $item2, $item3, $nMsg
$hGui = GUICreate("listview items", 500, 500, -1, $WS_EX_ACCEPTFILES) ; Erstellt die MainGui
GUISetBkColor(0x00E0FFFF) ; will change background color
$listview = GUICtrlCreateListView(" Dateiname | Erstelldatum | Größe ", 10, 10, 400, 400) ; Hier wird das ListView erstellt
[/autoit] [autoit][/autoit] [autoit]; Name, Datum, und Größe in das ListView eintragen
For $i = 1 To UBound($list) - 1
$list[$i] = GUICtrlCreateListViewItem($lol[$i] & "|" & $Date[$i] & "|" & $Size[$i] & " kb", $listview)
Next
GUISetState() ; Gui anzeigen
[/autoit] [autoit][/autoit] [autoit];Endlosschleife um die Gui aufrecht zu halten
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $listview
MsgBox(0, "listview", "clicked=" & GUICtrlGetState($listview), 2)
EndSwitch
WEnd
EndFunc ;==>_Gui
Vielen Dank
mfg SiLenCa