Hallo Ihr.
Also ich habe folgendes Problem. Ich habe eine Ini-Datei, in die nach AutoIt-Format
[SektionsName]
Schlüssel=Wert
Daten geschrieben werden. Die Anzahl der Sektionen ist in meinem Fall variabel, die Schlüssel mit den Werten dagegen konstant in jeder Sektion.
Ich möchte die gespeicherten Daten jetzt in einer GUI in der TreeView Ansicht ausgeben lassen. Da beginnt dann mein Problem...
Mein bisheriger Versuch war folgender:
[autoit][/autoit][autoit][/autoit][autoit]Opt("GUICoordMode", 1)
[/autoit][autoit][/autoit][autoit]$Form1 = GUICreate("Form1", 301, 454, 192, 124)
$TreeView1 = GUICtrlCreateTreeView(8, 216, 281, 169)
$daten = IniReadSectionNames("daten.ini")
For $i = 1 To $daten[0]
$daten1 = IniReadSection("daten.ini", $daten[$i])
Assign ( "TreeView" & $i & "_0", GUICtrlCreateTreeViewItem ( $daten[$i], $TreeView1 ), 2 )
Assign ( "TreeView" & $i & "_1", GUICtrlCreateTreeViewItem ( $daten1[1][0], $TreeView1_0 ), 2 )
Assign ( "TreeView" & $i & "_2", GUICtrlCreateTreeViewItem ( $daten1[1][1], $TreeView1_0 ), 2 )
Assign ( "TreeView" & $i & "_3", GUICtrlCreateTreeViewItem ( $daten1[2][1], $TreeView1_0 ), 2 )
Assign ( "TreeView" & $i & "_4", GUICtrlCreateTreeViewItem ( $daten1[3][1], $TreeView1_0 ), 2 )
Assign ( "TreeView" & $i & "_5", GUICtrlCreateTreeViewItem ( $daten1[4][1], $TreeView1_0 ), 2 )
Assign ( "TreeView" & $i & "_6", GUICtrlCreateTreeViewItem ( $daten1[5][1], $TreeView1_0 ), 2 )
Next
GUISetState(@SW_SHOW)
[/autoit][autoit][/autoit][autoit]While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
EndSwitch
WEnd
Mein Problem ist jetzt, dass alle Einträge aus der Ini-Datei in der TreeView der ersten Sektion zugeordnet werden und nicht wie geplant jede Sektion getrennt für sich. Der Fehler liegt hier in der festen Übergabe der Variable $TreeView1_0... Ich weiss jetzt aber nicht, wie ich das anders lösen könnte. Rein theoretisch müsste ich ja die Variable $TreeView{$i}_0 als Parameter übergeben, nur wie das funktioniert habe ich leider nicht rausfinden können...
Vielleicht kennt Ihr ja noch einen anderen Lösungsansatz, der evtl. sogar einfacher ist. Würde mich jedenfalls freuen, wenn mir da jemand helfen könnte!
Liebe Grüße
Darius83