TreeView [Résolu]

Messages postés
1231
Date d'inscription
vendredi 16 novembre 2007
Statut
Membre
Dernière intervention
16 juin 2009
- - Dernière réponse : jadpa01
Messages postés
2
Date d'inscription
mercredi 12 décembre 2007
Statut
Membre
Dernière intervention
17 mars 2010
- 16 avril 2008 à 14:26
Bonjour à tous,
Dans le cadre d'un developpement je cherche à faire :
Tester si un enfant existe quand un doucle clic est effectué sur un noeud
s'il existe déployer
sinon récupérer le contenu de la selection

Je m'explique : Au niveau de mon treeview c'est une serie de commande et sous commandes qui sont chargé. Quand on clique sur la commande terminale alors on lance celle-ci.
Merci pour vos réponse.
SLB
Afficher la suite 

Votre réponse

5 réponses

Meilleure réponse
Messages postés
174
Date d'inscription
jeudi 3 février 2005
Statut
Membre
Dernière intervention
30 janvier 2009
3
Merci
Voilà :

Dim Parent As TreeNode
Dim strNom as String
Dim strTexte as String

Dim strTag as String

Parent = Treeview1.SelectedNode.NextVisibleNode.Parent
If Parent.Name = trwMenu.SelectedNode.Name Then
    Treeview1.SelectedNode.Expand()
Else
    ' Tu récupères la sélection
    strNom = Treeview1.SelectedNode.Name
    strTexte = Treeview1.SelectedNode.Text
    strTag = Treeview1.SelectedNode.Tag
End If

J'espère que c'est ce que tu attendais...

pseudoOM

Le partage est une force alors n'hésitez pas à cliquer sur réponse acceptée pour partager les solutions trouvées !

Dire « Merci » 3

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

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

Commenter la réponse de pseudoOM
Messages postés
1231
Date d'inscription
vendredi 16 novembre 2007
Statut
Membre
Dernière intervention
16 juin 2009
1
3
Merci
Bonjour,

Merci de ta réponse. Cependant j'ai encore des soucis... :)
dans la déclaration :
Dim Parent As TreeNode --> le type TreeNode n'est pas reconnu.
J'ai aussi une erreur sur cette déclaration :
Parent = Treeview1.SelectedNode.NextVisibleNode.Parent
le selectnode n'existe pas...
J'ai pas précisé mais je développe sous VB6
Merci encore de cette aide

Dire « Merci » 3

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

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

Commenter la réponse de lillith212
Messages postés
1231
Date d'inscription
vendredi 16 novembre 2007
Statut
Membre
Dernière intervention
16 juin 2009
1
3
Merci
Bonjour,
J'ai résolu mon problème de cette façon :

Private Sub TreeView1_DblClick()
Dim strTemp As String


On Error Resume Next
'-- Test pour savoir si un enfant existe
If TreeView1.SelectedItem.Child Is Nothing Then
   '-- Il n'existe pas alors on récupere la valeur
    strTemp = TreeView1.SelectedItem.Text
    MsgBox strTemp
Else
   '-- Il existe donc on déploie
    TreeView1.SelectedItem.Expanded = True
End If


End Sub

En tout cas merci pour ta réponse elle m'a aidé à trouver la solution. :)
SLB

Dire « Merci » 3

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

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

Commenter la réponse de lillith212
Messages postés
2
Date d'inscription
mercredi 12 décembre 2007
Statut
Membre
Dernière intervention
17 mars 2010
0
Merci
Bonsoir,
Inspiré par vos développements, j'ai essayé un treeview en MS Access.  Un arbre s'affiche dans un formulaire mais je ne  parviens pas à déclencher un événement lorsque je clique sur un élément de cet arbre.
Plusieurs des commandes que vous utilisez semblent absentes.  Le Treeview (MSComctlLib.TreeCtrl.2) que j'utilise en MS Access (VBA) serait-il moins puissant que celui disponible en VB ?
Que dois-je utiliser en plus de HotTracking ?

Merci


 
Commenter la réponse de jadpa01
Messages postés
2
Date d'inscription
mercredi 12 décembre 2007
Statut
Membre
Dernière intervention
17 mars 2010
0
Merci
J'ai finalement trouvé tout seul et j'imagine que cela pourrait en intéresser d'autres.

Private Sub TreeView1_DblClick()
Dim TVNode As Node
Set TVNode = TreeView1.SelectedItem


MsgBox ("Pour confirmation que j'ai bien trouvé les détails de ce noeud, en voici le texte : " & TVNode.Text)


End Sub

A partir de là, je  peux continuer mes développements.

Bonne journée à tous,
Commenter la réponse de jadpa01