AGB  ·  Datenschutz  ·  Impressum  







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

VirtualStringTree: Speicherleck

Ein Thema von guidok · begonnen am 27. Okt 2009 · letzter Beitrag vom 2. Nov 2009
 
guidok

Registriert seit: 28. Jun 2007
417 Beiträge
 
#9

Re: VirtualStringTree: Speicherleck

  Alt 28. Okt 2009, 08:20
Zitat von himitsu:
Delphi-Quellcode:
TNodeData = record
  Id: Integer; //Identifikation des Feldes
  AuthReq: Integer; //Benötigte Authorisierung;
  Text: String; //Beschriftung
end;
Wenn man das so sieht, dann hast du es ja schon getrennt
ID ist dann wohl dein externer Datensatz
und das Andere betrifft nur die GUI/Anzeige
Stimmt genau! ID ist die Identifikation des Feldes in der "Datenhaltung".

Ein einzelner Datensatz ist bei mir ein CollectionItem und diese werden in einer Collection gehalten, insofern könnte ich für den Knoten auch einen Zeiger auf das CollectionItem angeben.

Ich sehe derzeit folgende Möglichkeiten:

1. Ich lasse es so wie es ist und validiere die Knoten beim Einfügen, um auch alle wieder entfernt zu bekommen.

2. Ich lasse ID weg und füge stattdessen gleich einen Zeiger auf das CollectionItem in den Knoten ein, was vermutlich keine schlechte Idee ist, weil ich dann direkt auf die Daten zugreifen kann ohne vorher nach der ID suchen zu müssen.

3. Ich füge nur einen Zeiger auf ein CollectionItem ein und halte alle Daten (also auch die, die ich nur für die "hübschere" Anzeige benötige) in der Collection. Das führt natürlich dazu, das ich ein paar mehr Daten sichern muss (Inifile, XML-Datei oder DB), die eigentlich nur für die GUI interessant sind. Vorteil wäre hier, dass ich ziemlich flexibel neue Werte einfügen könnte, weil das alles dynamisch aus dem Datenbestand aufgebaut wird.

4. Ich füge nur die ID ein und hole mir die Werte wie von himitsu vorgeschlagen über entsprechende Funktionen.

Darüber werde ich einmal nachdenken müssen. Vielen Dank für die Inspiration!
  Mit Zitat antworten Zitat
 


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 02:11 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