Gestion avancée d'un TreeView

Bonjour,

Je développe une application de distribution de MSI en AutoIT. Une interface que l’admin lance permet de générer un lanceur qui sera exécuté par un client avec peu de droit (par exemple un élève). Le lanceur installe l’application si elle n’existe pas sur le poste client, sinon, la lance directement. Pour l’installation, j’ai fait un rehaussement des droits.

Tout ça marche, sans soucis. Dans mon application, j’utilise une fonction qui liste des répertoires de manière récursive, et met en forme un TreeView :

http://autoitscript.fr/forum/download/file.php?id=61&mode=view

Le problème, c’est que la sélection par les cases à cocher ne me satisfait pas. Quand un parent est coché, tous ses fils devraient l’être. Quand tous les fils ne sont pas cochés, le parent devrait être coché en gris (semi coché).

Savez-vous comment mettre en place cette méthode de sélection ?

D’avance merci.

Déclaration de l’objet TreeView


$TreeStartMenus = GUICtrlCreateTreeView(16, 160, 305, 240, BitOr ($TVS_CHECKBOXES , $TVS_HASBUTTONS , $TVS_HASLINES , $TVS_LINESATROOT, $TVS_SINGLEEXPAND))

Edité le 16/04/2008 à 15:00

Une petite remontée :slight_smile: En vous remerciant pour l’aide que vous m’apporterez :slight_smile:

Bonjour Clem_71,

Je suis sur le même petit problème que toi.
Il ne semble pas possible de le faire par une “option”.
Il faut récupérer le parent dès qu’il se coche ou décoche, et cocher ou décocher tous les enfants.
Je ne l’ai pas encore fait. mais je tenterai de me souvenir de coller mon code ici, si ça fonctionne.

Si tu as déjà trouvé quelque chose, peux-tu mettre ton exemple ici ? Merci.

Bonne journée.