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

Delphi Discussion :

[Treeview] Changer le parent d'un Node


Sujet :

Delphi

  1. #1
    Membre régulier
    Inscrit en
    Avril 2005
    Messages
    115
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 115
    Points : 70
    Points
    70
    Par défaut [Treeview] Changer le parent d'un Node
    Bonjour à vous amis programmeurs, je sort d'une nuit de programmation mouvementé (étant donné mon niveau quelque peu... limité ) et il en ressort, en plus de la fatigue que les Treeview sont des adversaires bien plus difficile à vaincre que je ne le croyais.

    Mon appli gere un Treeview qui sert de visualisation d'ensemble de ce qu'il se passe sur le reste de mon programme, pour faire simple je voudrais que l'utilisateur puisse faire changer un Node de parent, et que ses enfants le suivent dans sa petite migration... Voila ca me paraissait simple mais je colle, j'ai trouvé quelques sujet sur ma recherche du forum, mais aucun ne répond précisément à mon problème

    Merci à vous

  2. #2
    Expert éminent sénior
    Avatar de Cl@udius
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2006
    Messages
    4 878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 4 878
    Points : 10 008
    Points
    10 008
    Par défaut
    Salut

    voici un petit code que j'avais écris (et très largement inspiré de l'exemple trouvé dans l'aide de Delphi7).

    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
    29
    30
    31
     
    procedure TForm1.TreeView1DragOver(Sender, Source: TObject; X, Y: Integer;
      State: TDragState; var Accept: Boolean);
    begin
      Accept := (Source = Sender) and (Source is TTreeView);
    end;
     
    procedure TForm1.TreeView1DragDrop(Sender, Source: TObject; X, Y: Integer);
    var
      AnItem: TTreeNode;
      AttachMode: TNodeAttachMode;
      HitTest: THitTests;
    begin
      with TTreeView(Sender) do
      begin
        if Selected = nil then Exit;
     
        HitTest := GetHitTestInfoAt(X,Y);
        AnItem := GetNodeAt(X,Y);
        if (HitTest * [htOnItem, htOnIcon, htNowhere, htOnIndent] <> []) then
        begin
          if (htOnItem in HitTest) or (htOnIcon in HitTest) then
            AttachMode := naAddChild
          else if htNowhere in HitTest then
            AttachMode := naAdd
          else if htOnIndent in HitTest then
            AttachMode := naInsert;
          Selected.MoveTo(AnItem, AttachMode);
        end;
      end;
    end;
    @+ Claudius

  3. #3
    Membre régulier
    Inscrit en
    Avril 2005
    Messages
    115
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 115
    Points : 70
    Points
    70
    Par défaut
    1000 Mercis, je ne pensais pas vouloir utiliser le Drag&Drop mais finalement c'est vraiment confortable

    Encore merci !

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

Discussions similaires

  1. [treeview] retrouver un parent avant d'insérer un enfant
    Par thewaterkidny dans le forum VB.NET
    Réponses: 3
    Dernier message: 30/04/2007, 16h33
  2. Réponses: 2
    Dernier message: 07/03/2007, 17h12
  3. Changer le parent d'un element
    Par Philorix dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 07/02/2007, 16h28
  4. [vb.net][treeview] forcer +/- devant parent
    Par graphicsxp dans le forum Windows Forms
    Réponses: 6
    Dernier message: 29/09/2005, 13h54
  5. TreeView : enfant ou parent selectionné ?
    Par LoicH dans le forum C++Builder
    Réponses: 7
    Dernier message: 31/08/2005, 23h13

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