Hallo Gemeinde,
mit der folgenden Funktion erzeuge ich dynamisch beim Programmstart eine ListBox deren Einträge aus der ini-Datei ausgelesen werden.
Diese wiederum bestehen aus den Dateinamen des definierten Ordners. Alles funzt soweit prima.
Nur beim Programmstart wird die Listbox immer mit dem letzten Eintrag angezeigt, anstatt mit dem ersten.
Wie kann ich erreichen, das die Listbox immer mit dem ersten Eintrag angezeigt wird?
Code
Func CreateListBox()
Local $sSection = "items"
Local $sKeyPrefix = "item"
Local $sINIFile = "PfadzurInidatei\listbox.ini"
Local $aItems = IniReadSection($sINIFile, "items")
$aFileList = _FileListToArray("Pfad zum Ordner für die Dateinamen", "QR_*")
For $i = 1 To $aFileList[0] ; Array[0] enthält die Anzahl der Elemente im Array
IniWrite($sINIFile, $sSection, $sKeyPrefix & $i, $aFileList[$i])
Next
If @error = 1 Then
MsgBox($MB_SYSTEMMODAL, "", "Pfad ungültig.")
Exit
EndIf
If @error = 4 Then
MsgBox($MB_SYSTEMMODAL, "", "Keine Dateien gefunden.")
Exit
EndIf
Sleep(200)
If Not @error Then
; Einträge durchlaufen und zur Listbox hinzufügen
For $i = 1 To $aItems[0][0]
GUICtrlSetData($QrCodeList, $aItems[$i][1])
Next
Else
MsgBox(16, "Fehler", "Die INI-Datei konnte nicht gelesen werden.")
EndIf
EndFunc ;==>CreateListBox
Alles anzeigen