Code : Tout sélectionner
Func _GestionDesCategories()
    Local $TreeView1Items[100][100]
    Local $Form1_1, $TreeView1, $label0, $label1, $label2, $Input0, $Input1, $Input2, $nMsg, $Ajouter, $Modifier
    Local $ListeExtensions
    $Form1_1 = GUICreate("Gestion des catégories", 626, 444, 192, 124)
    $TreeView1 = GUICtrlCreateTreeView(8, 8, 177, 425) ; On commence par créer un treeview
    For $i = 1 To $NbSectionsDuFichierIni
        $TreeView1Items[$i][0] = GUICtrlCreateTreeViewItem($categorie[$i][0], $TreeView1) ; dans lequel on commence par mettre en racine les noms de sections
        $ListeExtensions = StringSplit($categorie[$i][1], ".") ; puis on découpe la liste d"extensions
        For $j = 2 To $ListeExtensions[0] - 1
            $TreeView1Items[$i][$j] = GUICtrlCreateTreeViewItem($ListeExtensions[$j], $TreeView1Items[$i][0]) ; qu'on met en sous-ietm de la treeview
        Next
    Next
    $label0 = GUICtrlCreateLabel("Nom de la catégorie", 200, 15, 410, 17)
    $label1 = GUICtrlCreateLabel("Liste des extensions", 200, 70, 410, 17)
    $label2 = GUICtrlCreateLabel("Répertoire de stockage des fichiers", 200, 167, 410, 17)
    $Input0 = GUICtrlCreateInput("", 200, 35, 141, 21)
    $Input1 = GUICtrlCreateInput("", 200, 90, 410, 63)
    $Input2 = GUICtrlCreateInput("", 200, 187, 410, 21)
    $Ajouter = GUICtrlCreateButton("Ajouter",230, 230, 105, 33, $WS_GROUP)
    $Modifier = GUICtrlCreateButton("Modifier", 350, 230, 105, 33, $WS_GROUP)
    GUISetState(@SW_SHOW)
    While 1 ; on attend qu'il se passe qqchose dans la form
        $nMsg = GUIGetMsg()
        Switch $nMsg
 Case $Ajouter
                   _AjoutCategorie()
            Case $Modifier
                       _ModifCategorie()
            Case $GUI_EVENT_CLOSE
                Exit
            Case Else
                For $i = 1 To $NbSectionsDuFichierIni
                    If $nMsg = $TreeView1Items[$i][0] Then ; si l'utilisateur clique sur une des categories dans la treeview
                        GUICtrlSetData($Input0, $categorie[$i][0]) ; on met les valeurs dans les 3 champs de saisie
                        GUICtrlSetData($Input1, StringReplace($categorie[$i][1], ".", " "))
                        GUICtrlSetData($Input2, $categorie[$i][2])
                    EndIf
                Next
  EndSwitch
    WEnd
; pour l'instant la GUI fait rien de plus, mais il suffit ensuite de gerer les modifications apportées par l'utilisateur, et éventuellement de les enregistrer
EndFunc   ;==>_GestionDesCategories
Func _AjoutCategorie()
;Petite Gui
EndFunc
Func _ModifCategorie()
EndFunc