Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Virtual TreeView: Zwei Knoten vertauschen (https://www.delphipraxis.net/153977-virtual-treeview-zwei-knoten-vertauschen.html)

Keks 23. Aug 2010 16:56

Virtual TreeView: Zwei Knoten vertauschen
 
In einem VirtualTreeView sollen beim Drag & Drop eines Knotens auf einen anderen beide Knoten vertauscht werden. Die Knoten spiegeln dabei bestimmte Einträge in einer ini-Datei wieder.

Dazu zwei Fragen:
1. Wie dieses Vertauschen am besten realisieren? Beim Drop die Pointer auf die Knoten vertauschen oder zwei ProcessDrop Aktionen durchführen (dabei alle Aktionen merken und beim Bestätigen auf die Ini anwenden?) oder doch gleich die Daten in der Ini vertauschen und die VTV neu laden (dabei alle Zweige zu aufmachen wie im Moment, damit das nicht auffällt)?

2. Wie lässt sich der Mauszeiger während des Drag verändern? Ich würde hier gerne eine eigene Grafik als Mauszeiger verwenden, die das Vertauschen der beiden Knoten ersichtlich macht. Die Eigenschaft "Cursor" ändert nur den Mauszeiger im normalen Fall, aber nicht während des Drag&Drop-Vorgangs.

Hoffe, es kann jemand helfen...

Daniela.S 23. Aug 2010 18:38

AW: Virtual TreeView: Zwei Knoten vertauschen
 
1. Ohne jetzt genau zu wissen wie das aussieht würde ich die Pointer vertauschen und parallel dazu den Eintrag in der Ini-Datei ändern.

2. Probier mal bei OnDragOver den Mauszeiger zu ändern. Zur Not kannst du bei diesem Ereignis den Node nochmal zeichnen und dazu ein kleines Symbol das dies verdeutlicht.


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:35 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz