Einzelnen Beitrag anzeigen

Hedge

Registriert seit: 30. Jun 2007
278 Beiträge
 
Delphi 2009 Professional
 
#3

Re: VirtualTreeView - Drag'n'Drop nur in jeweiliger Ebene?

  Alt 13. Aug 2009, 00:37
Ah danke.
Habe jetzt das gewünscht Verhalten erreicht.

OnDragDrop sieht so aus:

Delphi-Quellcode:
Node := Sender.DropTargetNode;
DropMode := amInsertAfter;
if ((VST.GetNodeLevel(VST.FocusedNode)=1) AND (VST.GetNodeLevel(Node)=0)) then
DropMode := amAddChildLast;
Sender.ProcessDrop(DataObject, Node, Effect, DropMode);
und OnDragOver so:

Delphi-Quellcode:
  Node := Sender.GetNodeAt(Pt.X, Pt.Y);
  case Mode of
    dmOnNode: Accept := true;
  else
    Accept := false;
  end;
  if (Sender.GetNodeLevel(Sender.FocusedNode)=0) and (Sender.GetNodeLevel(Node)=1) then
      Accept := false;
٩๏̯͡๏)۶
  Mit Zitat antworten Zitat