Check box dans treeview [Résolu]

Messages postés
4
Date d'inscription
mardi 10 avril 2012
Statut
Membre
Dernière intervention
16 avril 2012
- - Dernière réponse : cs_joyed
Messages postés
4
Date d'inscription
mardi 10 avril 2012
Statut
Membre
Dernière intervention
16 avril 2012
- 16 avril 2012 à 10:05
bonjour a tous,

j'ai créer un treeview qui se construit de manière automatique a partir d'une de données (critère, sous critère) sur une feuille excel.
je lui ai mit des check box
je voudrais que l'utilisateur puisse cocher un ou plusieurs critères et récupérer les critères qu'il a coché pour in fine afficher des résultats en fonctions des critères sélectionné
je bloque un peu niveau idée là..
j'ai vu qu'il existe des
Private Sub TreeView1_NodeCheck(ByVal Node As MSComctlLib.Node) ceci est il pertinent dans mon cas?


merci si vous avez une idée!

a+
Afficher la suite 

6 réponses

Meilleure réponse
Messages postés
4
Date d'inscription
mardi 10 avril 2012
Statut
Membre
Dernière intervention
16 avril 2012
3
Merci
Private Sub TreeView1_NodeCheck(ByVal Node As MSComctlLib.Node)
Dim i As Integer
'Annuler les nodes du root
If Node.Children <> 0 Then
Node.Checked = False
Exit Sub
End If
If Node.Checked Then
ListBox1.AddItem Node.Text
Else
For i = 0 To ListBox1.ListCount
If ListBox1.List(i) = Node.Text Then
ListBox1.RemoveItem (i)
Exit Sub
End If
Next i
End If
End Sub

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 205 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_joyed
Messages postés
14594
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
16 novembre 2019
137
0
Merci
Bonjour,

As-tu lu la doc concernant le TreeView, je suis sûr que tout est dedans. (Pensse à la touche F1)

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualVasic (onglet Références dans les propriétés du projet).
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
Mon site
Commenter la réponse de NHenry
Messages postés
4
Date d'inscription
mardi 10 avril 2012
Statut
Membre
Dernière intervention
16 avril 2012
0
Merci
oui j'ai regardé mais en tapant "treeview" l'aide ne me donne que deux résultats:
CubeField.TreeviewControl, propriété
et
TreeviewControl, objet
qui me servent pas du tout... :s
Commenter la réponse de cs_joyed
Messages postés
14594
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
16 novembre 2019
137
0
Merci
Bonjour,

D'où tu sors ce CubeField.TreeviewControl ?
Dans VB6, il est dans les CommonControls (L'un des 3 CommonControls disponible).

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualVasic (onglet Références dans les propriétés du projet).
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
Mon site
Commenter la réponse de NHenry
Messages postés
4
Date d'inscription
mardi 10 avril 2012
Statut
Membre
Dernière intervention
16 avril 2012
0
Merci
heu.. dans les contrôles j'ai:
contrôle Ctreeview
et
microsoft treeview control, version 6.0

et pour le coup j'ai utiliser le second (ça change quelque chose??)

Sinon ce que je voulais dire c'est que quand je vais dans l'aide et que je tape "treeview" ça me donne rien d'autre que cubefield machin et l'autre truc...

cependant, j'ai réussi à évaluer si la case est cocher ou non en faisant une boucle qui teste chaque node et qui le met dans une listebox si c'est coché:
If TreeView1.Nodes(key).Checked = True Then
ListBox1.AddItem (TreeView1.Nodes(key).Text)

sait-tu si je peux mettre à jours en temps réel cette listbox?
c'est-à-dire qu'au fur et à mesure qu'on coche et décoche les cases, le critère s'affiche ou s'efface de la liste box automatiquement sans passer par un bouton pour "rafraichir"??
Commenter la réponse de cs_joyed
Messages postés
14594
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
16 novembre 2019
137
0
Merci
Bonjour,

Dans l'évènement NodeCheck, tu lances la procédure de rafraichissement.
Sinon, hormis tester si tous les noeuds individuellement, je ne vois pas d'autre méthode.

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualVasic (onglet Références dans les propriétés du projet).
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
Mon site
Commenter la réponse de NHenry