IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Access Discussion :

TreeView La suppression d'une noeud détruit-il toutes les branches filles attachées au noeud [AC-2010]


Sujet :

VBA Access

  1. #1
    Membre éprouvé

    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    981
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 981
    Points : 1 028
    Points
    1 028
    Billets dans le blog
    36
    Par défaut TreeView La suppression d'une noeud détruit-il toutes les branches filles attachées au noeud
    Bonjour à tous?

    Faut-il supprimer de façon récursive tous les branches filles rattachées à un nœud avant de supprimer un nœud ou sa suppression détruit-elle toutes les branches filles?

    Merci par avance pour toute aide!
    Mal nommer un objet, c'est ajouter au malheur de ce monde, car le mensonge est justement la grande misère humaine, c'est pourquoi la grande tâche humaine correspondante sera de ne pas servir le mensonge
    Poésie 44, n° 17 - Albert Camus

    Mes réponses vous ont aidés, un clic sur leur pouce vert
    Bonjour chez vous

  2. #2
    Membre éprouvé

    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    981
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 981
    Points : 1 028
    Points
    1 028
    Billets dans le blog
    36
    Par défaut
    Dans le livre Microsoft Access 2010 VBA Programming Inside Out on lit :


    When you delete a node, all the child nodes below that node should also be deleted, as
    follows:
    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
    Public Sub DeleteNode(Key As String)
     ' delete a node in the tree
     Dim lngDataKey As Long
     ' get numerical part of the key
     lngDataKey = ExtractKey(Key)
     ' delete any child nodes this is a bit more complex
     ' because each child node can also have child nodes
     rst.FindFirst "Parentkey = " & lngDataKey
     Do While Not rst.NoMatch
     ' has child nodes
     ' NOTE THIS CODE IS RECURSIVE
     DeleteNode NodePrefix & rst!TreeNodeId
     rst.FindNext "Parentkey = " & lngDataKey
     Loop
     rst.FindFirst "TreeNodeId = " & lngDataKey
     If Not rst.NoMatch Then
     rst.Delete
     End If
     On Error Resume Next
     tv.Nodes.Remove Key
    End Sub
    This code routine is an example of recursive code, which means that the procedure keeps
    calling itself from within itself, nesting to the required number of levels, and then as execution
    at any particular level ends, it backs itself out to resume execution at the previous level.
    Mal nommer un objet, c'est ajouter au malheur de ce monde, car le mensonge est justement la grande misère humaine, c'est pourquoi la grande tâche humaine correspondante sera de ne pas servir le mensonge
    Poésie 44, n° 17 - Albert Camus

    Mes réponses vous ont aidés, un clic sur leur pouce vert
    Bonjour chez vous

  3. #3
    Membre éprouvé

    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    981
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 981
    Points : 1 028
    Points
    1 028
    Billets dans le blog
    36
    Par défaut
    Je complète pour revenir sur le précédent post,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    treeView.Nodes.Remove (monNode.Key)
    Supprime également tous les noueux fils !
    Mal nommer un objet, c'est ajouter au malheur de ce monde, car le mensonge est justement la grande misère humaine, c'est pourquoi la grande tâche humaine correspondante sera de ne pas servir le mensonge
    Poésie 44, n° 17 - Albert Camus

    Mes réponses vous ont aidés, un clic sur leur pouce vert
    Bonjour chez vous

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 24/09/2007, 16h06
  2. Réponses: 6
    Dernier message: 19/02/2007, 13h34
  3. [javadoc] - ajouter une entête javadoc a tout les fichiers
    Par spidetra dans le forum Eclipse Java
    Réponses: 4
    Dernier message: 15/09/2006, 10h01
  4. Réponses: 3
    Dernier message: 12/05/2006, 12h34
  5. Réponses: 1
    Dernier message: 16/02/2005, 12h04

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo