AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

VST - Ein Record für Parent- und Child-Nodes

Ein Thema von chest3rs · begonnen am 20. Feb 2008 · letzter Beitrag vom 21. Feb 2008
Antwort Antwort
chest3rs

Registriert seit: 15. Okt 2006
Ort: Berlin
84 Beiträge
 
Delphi 7 Personal
 
#1

VST - Ein Record für Parent- und Child-Nodes

  Alt 20. Feb 2008, 12:28
Hallo,

mal wieder eine Frage zum VirtualStringTree:

Ich möchte mit einem Record mehrere Nodes mit Daten befüllen.

Delphi-Quellcode:
TAppData = packed record
  FileName : string[255];
  Path : string[255];
  Decription : string[255];
+ FileName (Parent)
|________Path (Child)
|________Description (Child)


Der Knoten soll mit FileName beschriftet werden, die ChildNodes enthalten die restlichen Informationen, Path und Description.

Ich möchte nur ein Record für einen Knoten mit Untereinträgen verwenden. Alle Untereinträge (ChildNodes) sollen sich die Informationen aus dem Record des ParentNodes holen.

Habs so probiert:

Delphi-Quellcode:
var
  Data : TAppData;
begin
  if Node.Parent = Sender.RootNode then // Parent oder Child?
    Data := VST.GetNodeData(Node.Parent);
end;
Theoretisch holt sich Data die Daten vom ParentNode. Geht aber leider nicht so einfach...

Normal wäre es, wenn ich alle Daten für jede ChildNode neu setzten und zuordnen muss. Ich würde mir das gerne schenken, da ich ja dann drei mal das gleiche Datenpaket erstellen muss.

Kennt Ihr ne ähnliche Methode, mit der sich das Prinzip realisieren lässt, oder muss ich das immer mit einem Record pro Node umsetzten?

Hoffentlich versteht das einer...

Grüße
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: Unterhaching
11.412 Beiträge
 
Delphi 12 Athens
 
#2

Re: VST - Ein Record für Parent- und Child-Nodes

  Alt 20. Feb 2008, 12:50
Sender.RootNode ist eine interne Node, auf welcher Du keine Daten geben kannst. Wenn Du mehrere RootNodes hast (RootNodeCount > 0, diese sind nicht Sender.RootNode), dann mache es wie folgend:
Delphi-Quellcode:
var
  Data : TAppData;
begin
  if Sender.GetNodeLevel(Node) = 1 then // Parent oder Child?
    Data := VST.GetNodeData(Node.Parent);
end;
......
Daniel Lizbeth
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
chest3rs

Registriert seit: 15. Okt 2006
Ort: Berlin
84 Beiträge
 
Delphi 7 Personal
 
#3

Re: VST - Ein Record für Parent- und Child-Nodes

  Alt 21. Feb 2008, 09:27
Perfekt! Deine Lösung funktioniert wunderbar! Sie erspart mir jede Menge unnötigen Quelltext!

Und ich hab auch schon die ganze Zeit nach NodeLevel gesucht...
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: Unterhaching
11.412 Beiträge
 
Delphi 12 Athens
 
#4

Re: VST - Ein Record für Parent- und Child-Nodes

  Alt 21. Feb 2008, 09:42
Ich habe die letzten Wochen ausgesprochen viel mit der Komponente gearbeitet. Die hat eine steile Lernkurve, aber wenn man die durch hat, dann ist diese Control einfach genial praktisch und einfach zu nutzen

......
Daniel Lizbeth
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
chest3rs

Registriert seit: 15. Okt 2006
Ort: Berlin
84 Beiträge
 
Delphi 7 Personal
 
#5

Re: VST - Ein Record für Parent- und Child-Nodes

  Alt 21. Feb 2008, 09:53
Da stimme ich dir 100% zu. Ich hab mich mit der Kompo auch sehr schnell angefreundet.

Hoffentlich wird sie noch öfter thematisiert.

Grüße
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:15 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