![]() |
Treeview - 2 Items (mit children) vertauschen
Hi ich steh vor dem Problem, dass ich net weiß, wie ich in einem Treeview 2 Items vertauschen kann.
Ich suche eine Art Procedure tauscheItems(item1,item2). Kann mir da jemand helfen? :) |
Re: Treeview - 2 Items (mit children) vertauschen
Hallo,
probiere es so:
Delphi-Quellcode:
Grüße vom marabu
item2.MoveTo(item1, naInsert);
|
Re: Treeview - 2 Items (mit children) vertauschen
Das ist zwar schon eine große Hilfe, aber weiter komm ich damit trotzdem nicht. (Das ganze wird eine Drag and Drop Verschiebung im Treeview.)
Delphi-Quellcode:
Jetzt hab ich nur das Problem, dass ich nicht in GetNodeAt(X,Y) und Selected; schreiben kann.
TargetNode := GetNodeAt(X,Y);
SourceNode := Selected; TempNode := SourceNode; TargetNode.MoveTo(SourceNode,naInsert); TempNode.MoveTo(TargetNode,naInsert); Was mach ich da? |
Re: Treeview - 2 Items (mit children) vertauschen
Drag-and-Drop in einer TreeView - da ist das Vertauschen zweier Knoten eher unüblich. Vielleicht möchtest du mit diesem Code ein wenig experimentieren?
Delphi-Quellcode:
Grüße vom marabu
procedure TDemoForm.TreeViewDragDrop(Sender, Source: TObject; X, Y: Integer);
var HT: THitTests; AttachMode: TNodeAttachMode; TargetNode: TTreeNode; begin HT := TreeView.GetHitTestInfoAt(X, Y); TargetNode := TreeView.GetNodeAt(X, Y); if (htOnItem in HT) then begin AttachMode := naAddChild; TargetNode.Expand(False); end else if (htOnIndent in HT) then AttachMode := naInsert else if (htOnRight in HT) then AttachMode := naAdd else Exit; with Sender as TTreeView do Selected.MoveTo(TargetNode, AttachMode); end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:26 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz