![]() |
Virtual Treeview: Erzeugung der Baumstruktur
Hallo,
ich dachte, wenn ich OnInitNode und OnInitChildren anständig verarbeite und einmal(!) VST.AddChild(nil) aufrufe, sollte der rest von alleine gehen... tut es aber nicht. Wie macht man das? |
Re: Virtual Treeview: Erzeugung der Baumstruktur
Du musst der VST mittteilen, wieviel Speicher pro Knoten reserviert werden soll.
|
Re: Virtual Treeview: Erzeugung der Baumstruktur
Liste der Anhänge anzeigen (Anzahl: 1)
Hi,
Um dem VST die Datengröße deines Records mitzuteilen gibt es zwei Möglichkeiten, 1. Im OnCreate der Form, VST.NodeDataSize := SizeOf({DatenRecord}); 2. Im OnGetNodeDataSize. Mit der zweiten Variante ist es auch möglich verschiedengroße Records zu haben. Mal ein Bsp. wie man eine Baumstruktur erzeugt
Delphi-Quellcode:
In Data liegen die Daten die ein Node enthällt
var
Data : PTreeData; Node : PVirtualNode; begin // "Data" mit Daten füllen Node := VST.AddChild(nil, Data); // Node Ebene 0 (Wurzel) // "Data" mit anderen Daten füllen VST.AddChild(Node, Data); // neuer SubNode Ebene 1 (Stamm) // "Data" mit anderen Daten füllen Node := VST.AddChild(Node, Data); // neuer SubNode Ebene 1 (Stamm) // "Data" mit anderen Daten füllen VST.AddChild(Node, Data); // neuer SubNode Ebene 2 (Ast) //usw... end; Edit: Ich hatte da mal was grob zusammengezimmert sind ein par Fehler drin zeigt dir vieleicht aber wies geht |
Re: Virtual Treeview: Erzeugung der Baumstruktur
Hmm.... die datasize hab ich zugewiesen...
@C.Schoch: Das mit dem AddChild ist doch die nicht empfohlene Methode, oder? Ich dachte, es reicht, nur OnInitNode und OnInitChildren zu implementieren. Ich will nicht noch mehr schrieben, mein Code ist kompliziert genug :( EDIT: danke, eine zeile fehlte:
Delphi-Quellcode:
Jetzt krieg ich zwar n listenerror, aber egal. endlich gehts weiter :)
InitialStates := InitialStates + [ivsHasChildren];
|
Re: Virtual Treeview: Erzeugung der Baumstruktur
Hi,
In der Hilfe steht dazu: Zitat:
Da hast du recht, Das Virtual Tree ist doch recht kompliziert aber der Funktionsumfang dieser Komponente macht dies wieder wett. |
Re: Virtual Treeview: Erzeugung der Baumstruktur
Jop,
bei mir klappts jetzt, indem ich die RootNodes direkt erzeuge und den Rest über OnInitChildren. (naja, klappen ist zu viel gesagt) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:17 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