Bonjour,
Comment peut on générer un ensemble ou une liste de chemins à partir du contenu d'un treeview où chaque chemin commence de la racine et se termine dans un noeud feuille.
Aidez moi svp.
Bonjour,
Comment peut on générer un ensemble ou une liste de chemins à partir du contenu d'un treeview où chaque chemin commence de la racine et se termine dans un noeud feuille.
Aidez moi svp.
Regarde sur ce lien si cela correspond à ce que tu recherche:
http://www.swissdelphicenter.ch/torr...ode.php?id=859
une piste
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 procedure TForm1.Button1Click(Sender: TObject); var tn:TTreeNode; i:integer; Procedure GetNeud(p:string;n:TTreeNode); var i:integer; s:string; begin if n.Count=0 then ListBox1.Items.Add(p) else for i:=0 to n.Count-1 do begin GetNeud(p+'\'+n.Item[i].Text,n.Item[i]); end; end; begin ListBox1.Clear; for i:=0 to TreeView1.Items.Count-1 do begin tn:=TreeView1.Items.Item[i]; if (tn.Level=0) then GetNeud(tn.Text,TreeView1.Items.Item[i]) end; end;
Merci neodelphi2007
j'ai jetté un coup d'oeil sur le lien et finalement le code ne génère pas tous les chemins mais seulement un chemin d'un noeud selectionné.
Si tu veux un chemin pour chaque noeud d'un treeview
tu peut reprendre le code de edam puis ajouter une simple ligne:
à l'endroit indiquer par la flèche <==
Code : Sélectionner tout - Visualiser dans une fenêtre à part ListBox1.Items.Add(p);
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 procedure TForm1.Button1Click(Sender: TObject); var tn:TTreeNode; i:integer; Procedure GetNeud(p:string;n:TTreeNode); var i:integer; s:string; begin if n.Count=0 then ListBox1.Items.Add(p) else for i:=0 to n.Count-1 do begin ListBox1.Items.Add(p); // <== GetNeud(p+'\'+n.Item[i].Text,n.Item[i]); end; end; begin ListBox1.Clear; for i:=0 to TreeView1.Items.Count-1 do begin tn:=TreeView1.Items.Item[i]; if (tn.Level=0) then GetNeud(tn.Text,TreeView1.Items.Item[i]) end; end;
Partager