Utilisation des treeviews

Soyez le premier à donner votre avis sur cette source.

Vue 12 646 fois - Téléchargée 1 416 fois

Description

Petit tutoriel pour débutants en VB expliquant le fonctionnement basique des TreeViews.

Ce qu'il faut:
- Une feuille
- Un TreeView (Nom: Tree1) - Pour disposer du contrôle TreeView, allez dans Projets\Composants et sélectionnez Microsoft Windows Common Controls X.X (SP2) avec X.X étant votre version de VB (normallement)
- Un label (Nom: Label1)
- Une TextBox (Nom: TNS)
Vous disposez ça comme vous voulez ou vous télécharez le zip.
Bonne chance et à plus.

Source / Exemple :


'Code à mettre dans la feuille:
Private Const SEQUENCE = "\\"

Private Sub Form_Load()
Dim NTV As Node

Tree1.PathSeparator = SEQUENCE

'Ajoute un noeud mère nommé Janvier et qui a pour identifiant M1
Set NTV = Tree1.Nodes.Add(, , "M1", "Janvier")
'Ajoute un noeud fille de premier niveau nommé Semaine 1 qui a pour identifiant M1S1 et qui appartient au noeud mère M1
Set NTV = Tree1.Nodes.Add("M1", tvwChild, "M1S1", "Semaine 1")
'Ajoute un noeud fille de second niveau nommé Lundi qui a pour identifiant M1S1J1 et qui appartient au noeud mère M1S1
Set NTV = Tree1.Nodes.Add("M1", tvwChild, "M1S2", "Semaine 2")

Set NTV = Tree1.Nodes.Add(, , "M2", "Février")
Set NTV = Tree1.Nodes.Add("M2", tvwChild, "M2S1", "Semaine 1")
Set NTV = Tree1.Nodes.Add("M2", tvwChild, "M2S2", "Semaine 2")
Set NTV = Tree1.Nodes.Add("M2S2", tvwChild, "M2S2J1", "Jour 1")
End Sub

Private Function getLev(Node As ComctlLib.Node) As Integer
Dim str As String
Dim i As Integer

getLev = 1

str = Node.FullPath

For i = Len(str) To 1 Step -1
    If Mid(str, i, Len(SEQUENCE)) = SEQUENCE Then getLev = getLev + 1
Next
End Function

Private Sub Tree1_NodeClick(ByVal Node As ComctlLib.Node)
'Affiche le nom du noeud sélectionné ainsi que son chemin quand on clique sur un noeud
TNS = Node.Text & ": " & Node.FullPath
'Affiche le niveau (version "à l'arrache") - Tous les "keys" sont composés de deux caractères par niveau
'TNS = TNS & " (Niveau " & Int(Len(Node.Key) / 2) & ")"
'Affiche le niveau (version "propre")
TNS = TNS & " (Niveau " & getLev(Node) & ")"
End Sub

Conclusion :


Si vous voulez d'autres infos ou des fonctions plus avancées sur les TreeViews, n'hésitez pas à m'adresser un mail.

Codes Sources

A voir également

Ajouter un commentaire

Commentaire

Messages postés
3
Date d'inscription
jeudi 21 décembre 2000
Statut
Membre
Dernière intervention
23 juillet 2010

stp je suis besoin de faire l'opération glisser-dépôt avec des nœuds dans le même contrôle TreeView . et la je suis blokie si vous avez un example de code merci
hajji-tarik@hotmail.com;t.08@hotmail.fr;tarikms2i@gmail.com

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.