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

Composants VCL Delphi Discussion :

Access violation dans un TTreeView


Sujet :

Composants VCL Delphi

  1. #1
    Membre régulier

    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    142
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 142
    Points : 120
    Points
    120
    Par défaut Access violation dans un TTreeView
    Bonjour à tous,

    Je travaille sur un TTreeView défini dans une form.

    Toujours dans cette form, j'ai une variable globale TTreeNode :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    private
        { Déclarations privées }
            CNode : TTreeNode;
    Au départ, Le TreeView est vide. Je crée un premier noeud :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    procedure TfActivite.DessinerSoeur(NomAct: string);
    begin
      CNode := TVact.Items.Add(Cnode, NomAct);
      TVAct.SaveToFile(FicTreeV);
      TVAct.SetFocus;
      TVAct.Select(CNode);
    end;
    Je peux ensuite créer d'autres soeurs ou d'autres filles. Pas de problème.

    Je peux aussi supprimer ce premier noeud avec une procédure dans laquelle j'ai :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    TVact.Items.Delete(CNode);
    Ensuite, lorsque je veux récréer un premier noeud avec la première procedure décrite ci-dessus (TfActivite.DessinerSoeur), j'ai un Access Violation sur l'instruction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    CNode := TVact.Items.Add(Cnode, NomAct);
    En résumé, si le TreeView contient des noeuds, tout se passe bien, je crée et détruit sans problème.
    Si le TreeView est vide, je me plante à la création sauf la première fois.

    J'ai essayé pas mal de trucs sans trouver de solution à ce plantage. Si vous avez des éléments d'aide, je suis preneur.

    Merci d'avance.

    PS : Après la destruction du dernier noeud, j'ai codé un Close de la form, pour voir... Même problème, bien sûr...

  2. #2
    Membre régulier

    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    142
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 142
    Points : 120
    Points
    120
    Par défaut
    bon, je fais les questions et les réponses, excusez-moi, et ça pourra peut-être servir :

    A la création, il suffit de faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    CNode := TVact.Items.Add(nil, NomAct);
    Voilà ce que c'est de regarder un tuto foireux (ailleurs que sur developpez.com )

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 20/11/2012, 10h57
  2. Problème Access Violation dans une classe
    Par randriano dans le forum C++Builder
    Réponses: 1
    Dernier message: 11/04/2007, 18h49
  3. TTreeView, DragOver le "vide" => access violation
    Par netah25 dans le forum C++Builder
    Réponses: 2
    Dernier message: 21/09/2006, 21h13
  4. [DELPHI][PROECEDURES STOCKES] Access violation
    Par All Jinx dans le forum Bases de données
    Réponses: 6
    Dernier message: 14/05/2004, 15h57
  5. Réponses: 3
    Dernier message: 22/05/2002, 09h37

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