Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : [VB2005 ]Parcourir tous les noeuds d'un treeview [ Windows / Formulaire / Winforms / Controls ] (EXCLUSIF)

samedi 28 juillet 2007 à 14:19:54 | [VB2005 ]Parcourir tous les noeuds d'un treeview

EXCLUSIF

Bonjour à tous,

Comment faire pour parcourir l'ensemble des noeuds d'un treeview afin de récupérer la propriété Tag de chacun d'entre eux ?

Merci et bon week-end

Ludo

samedi 28 juillet 2007 à 20:50:20 | Re : [VB2005 ]Parcourir tous les noeuds d'un treeview

casy

Membre Club
Réponse acceptée !


Peut-etre quelque chose du genre :



        'Pour chaque noeud parent du treeview
        For Each toto As TreeNode In TreeView1.Nodes
            'Pour chaque noeud enfant du noeud parent
            For Each titi As TreeNode In toto.Nodes
                ...................
            Next
        Next


---- Sevyc64  (alias Casy) ----
# LE PARTAGE EST NOTRE FORCE #    [ Lien ]

samedi 28 juillet 2007 à 22:36:22 | Re : [VB2005 ]Parcourir tous les noeuds d'un treeview

EXCLUSIF

Merci beaucoup Casy j'ai dû rajouter un niveau de plus car je voulais atteindre le 3ème niveau de mon treeview mais ça marche à merveille.

mardi 22 avril 2008 à 14:49:11 | Re : [VB2005 ]Parcourir tous les noeuds d'un treeview

stankov

L'idée proposée par Casy est bonne, mais si à chaque fois qu'il y a un nouveau niveau à ajouter tu auras besoin de modifier ton code;

Si tu veux limiter (expressement) la parcours de 3 niveaux, va pour ton algorithme. mais si le nombre de niveau est indeterminé, alors tu as besoin de faire une fonction recursive qui va parcourir tous les noeuds.
C'est un algo complexe, mais quand il marche, et bien l'utilise dans presque TOUS les cas de figures liés au parcours d'un Treeview

lundi 19 mai 2008 à 14:50:42 | Re : [VB2005 ]Parcourir tous les noeuds d'un treeview

halbi


Bonjour tout le monde
Justement j'ai ce cas de figure à étudier en ce moment,
j'essaie de lister le contenu d'un dossier ftp distant dans un treeview,
j'ai une fonction recursive qui me liste les noeuds lorsqu'un "/" est detecté et qui en fonction de cela m'ajoute un noeud "enfant".
Le soucis est que les noeuds enfants ne sont pas attribués aux bons parents, je retrouve même parfois plusieurs fois le même enfants dans des parents différents
le vrai bordel quoi ^^
si une âme charitable veut bien me donner un exemple de code, ça m'aiderait beaucoup
merci
ps : je suis en info de gestion fin de 1ere année excusez ma nullité


mardi 27 mai 2008 à 11:59:42 | Re : [VB2005 ]Parcourir tous les noeuds d'un treeview

stankov

salut Halbi.
Je voudrais voir le bout de code à partir duquel tu construis ton treeview.

T'es en première année info de gestion et tu penses à faire des choses que moi j'ai appris à faire en 3e Info; alors ne crois pas que t'es nul. C'est pas parceque quelque chose ne va pas comme tu veux que tu vas te décourager.

mercredi 28 mai 2008 à 19:23:40 | Re : [VB2005 ]Parcourir tous les noeuds d'un treeview

halbi



Déja, merci de bien vouloir m'aider, c'est simpa et merci aussi pour les encouragements
je suis en alternance en faite, je bosse ce projet en entreprise et cette semaine je suis en cours, donc je te poste le code la semaine prochaine si tu veux bien.

lundi 2 juin 2008 à 14:15:28 | Re : [VB2005 ]Parcourir tous les noeuds d'un treeview

halbi

Voila comme promis Stankov, je viens poster le bout de mon code concernant les treenodes :
 
Il doit paraitre bordelique pour vous, mais je suis encors debutant, veuillez m'excuser


Function Lister_Noeud(ByVal NomRep As String, ByRef Noeud As Windows.Forms.TreeNode, ByVal Wi As Int32) As Boolean                                                        
'Voila la fonction recursive (ou routine)

        Dim listbox As New Windows.Forms.ListBox

        ftpcd(NomRep, axinet1)                                     
'ces fonctions viennent d'une autre feuille et me servent
        ftpdir(listbox, axinet1)                                         
'a lister le contenu du ftp
        Dim wrep As String
        Dim wnoeud As New Windows.Forms.TreeNode

        Wi = 0
        For Wi = 0 To listbox.Items.Count - 1                           '
pour wi de 0 au nombre d'elements de la listbox
            wrep = listbox.GetItemText(listbox.Items(Wi))              
'wrep = elements de la listbox
            wnoeud.ImageIndex = 0
            wnoeud.SelectedImageIndex = 0
            wnoeud.Text = wrep                                         
'texte du noeud = contenu de wrep
          
            If InStr(wrep, "/") > 0 Then                               
'si wrep comporte au moins un "/"
                Lister_Noeud(wrep, wnoeud, Wi)                        
            Else
                ftpcd("..", axinet1)                                    
'sinon, on remonte d'un niveau
            End If
            Noeud.Nodes.Add(wnoeud)
        Next
    End Function

'-----------------------------------------------------------------------------------------------------------------------------------------------------'

    Private Sub Menu_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load                                                                                      

        Dim i As New Integer
        Dim Nom_Rep As String
        Dim lstb As New System.Windows.Forms.ListBox                  


        If ftpopen("
192.168.1.1 ", "user", "pass", axinet1) = True Then 'ouverture connection ftp
            ftpdir(lstb, axinet1)                                                                                    'dir dans la lstb
            axinet1.Cancel()
            i = 0
            For i = 0 To lstb.Items.Count - 1                         
                ftpopen("192.168.1.1", "user", "pass", axinet1)    'connection ftp
                Nom_Rep = lstb.GetItemText(lstb.Items(i))              
                Dim noeud As New Windows.Forms.TreeNode
                noeud.ImageIndex = 0
                noeud.SelectedImageIndex = 0
                noeud.Text = Nom_Rep                                  
                If InStr(Nom_Rep, "/") > 0 Then                         'si dans nom_rep il y a un "/" alors
                    Lister_Noeud(Nom_Rep, noeud, i)                    
                End If
                TreeV_MAJ.Nodes.Add(noeud)                              'ajout du noeud
                axinet1.Cancel()
            Next
        Else
            MsgBox("non connecté au ftp")                              
        End If
    End Sub

Ce bout de code me génere un peu tout et n'importe quoi, je retrouve des noeuds enfants identiques dans tous mes noeuds parents, alors que d'autres n'apparaissent pas, j'espere avoir été clair
Mon maître de formation m'a aider à le developper mais je galere pas mal dans l'ensemble, j'ai encore un peu de mal à tout comprendre, voila si quelqu'un à autre chose à me proposer, le but étant de trouver tous les noeuds du treeview en ne connaissant pas le nombre de niveaux à l'avance avec les bons noeuds enfants appartenant aux bons noeuds parents
(Wouah quelle prise de tête ce truc )

vendredi 6 juin 2008 à 10:18:20 | Re : [VB2005 ]Parcourir tous les noeuds d'un treeview

halbi


arf je croyais que c'etait un site de developpeur ici :( lol
allez les gens, j'ai besoin de votre aide

lundi 16 juin 2008 à 11:01:11 | Re : [VB2005 ]Parcourir tous les noeuds d'un treeview

halbi

c'est si compliqué que ça que personne arrive à me repondre ?
je suis en premiere année de bts info, je ne pense pas avoir le niveau suffisant pour pouvoir poser des colles à de grands developpeur comme vous, nan ?
bon si une âme charitable remarque ce message, merci de m'aider



1 2

Cette discussion est classé dans : treeview, parcourir, vb2005, noeuds


Répondre à ce message

Sujets en rapport avec ce message

parcourir tout les n½uds d'une TreeView [ par fouad11 ] je veux parcourir tout les n½uds d'une TreeView par une fonction récursive ,si qlq 1 a une solution pour ca je serais reconnaissant Treeview [ par erwan35 ] Bonjour à tous,Mon prog rempli un treeview grâce à une base de données ACCESS. Il y a environ 1500 noeuds dans ce treeview.Lorsqu'un utilisateur cliqu TREEVIEW suppression noeuds [ par boboss1 ] Comment supprimer tous les noeuds enfants d'un noeud sans supprimer le noeud parent Problème TreeView [ par Globinours ] Le problème est tous simple j'aimerais échanger deux noeuds d'un TreeViewpou pouvoir réaliser une fonction "monter" ou "descendre" un noeud. Je ne che treeView apparence [ par yvesyb ] Bonjour,Peut-on masquer des noeuds dans un treeview, ou bien, masquer la descendance de certains noeuds tout en les conservant disponibles, je veux di drag drop treeview ENTRE noeuds [ par ssauvage ] Bonjour. J'aimerai dans un composant treeview faire une fonctionnalité permettant par l'intermédiaire d'un drag and drop de réordonner des noeuds. J Treeview et la recherche recursive [ par ghannem ] salut j'aimerais bien savoir comment faire fonctionner une fonction recurusive pour avoir un treeview qui affiche les noeuds et les sous noeuds et les treeview ajouter un noeud sans connaitre lindex du parent [ par tump ] bonjour,je suis en vbnetje souhaite ajouter un sous-noeud a ma treeviewjai 2 noeuds principaux dont un appelé "envoyés"dans ce noeud jai 3 sous noeuds Parcourir des noeud fils dans un TreeView [ par Eric25 ] Bonjour,J'ai un TreeView a deux niveaux. Je souhaite savoir comment parcourir les noeuds fils de ce TreeView.J'ai déjà réussi à parcourir les noeuds p [VB.NET] COmment faire une recherche dans une treeview ??? [ par fdiedler2000 ] Slt, J'ai une treeview avec des noeuds et des sous noeuds et je voudrais créer une fonction qui fait une recherche d'un sous noeuds : Par exemp


Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,312 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.