Delphi-PRAXiS
Seite 3 von 4     123 4      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi TTreeNode um eine weitere Variable erweitern (https://www.delphipraxis.net/50166-ttreenode-um-eine-weitere-variable-erweitern.html)

sakura 22. Jul 2005 12:18

Re: TTreeNode um eine weitere Variable erweitern
 
Zitat:

Zitat von Nogge
Ich benutze Node.Data so:

:shock: Du kannst das Object doch nicht sofort wieder disposen ;) Anlegen und in Data eintragen, fertig.

Anschließend im OnDeletion wieder auslesen und freigeben ;)

...:cat:...

barf00s 22. Jul 2005 12:38

Re: TTreeNode um eine weitere Variable erweitern
 
wenners so benutzt, dann reicht nen .Data := nil;
nur sein GroupData blah musser gescheit freigeben

Nogge 22. Jul 2005 12:44

Re: TTreeNode um eine weitere Variable erweitern
 
Gut, danke euch allen.
Habe durch diesen Thread jetzt erst richtig verstanden, wie es sich mit Node.Data und Pointer verhält^^

sakura 22. Jul 2005 13:17

Re: TTreeNode um eine weitere Variable erweitern
 
Zitat:

Zitat von barf00s
wenners so benutzt, dann reicht nen .Data := nil;
nur sein GroupData blah musser gescheit freigeben

So kann er es aber nicht nutzen :roll: Das Problem ist, dass er das Dispose sofort aufruft und somit der Datenbereich auch wieder freigegeben wird. Nachdenken!

Deshalb muss er später Dispose nutzen. Dahingegen kann er sich das Data := nil; sparen, da das keine Auswirkungen hat :roll: Win32 referenziert Pointer nun mal nicht.

...:cat:...

barf00s 22. Jul 2005 13:25

Re: TTreeNode um eine weitere Variable erweitern
 
freilich kann er -

sakura 22. Jul 2005 13:31

Re: TTreeNode um eine weitere Variable erweitern
 
Zitat:

Zitat von barf00s
freilich kann er -

Wieso? Die Daten können jederzeit mit anderen überschrieben werden. Es stimmt, er kann es tun, aber er kann sich nicht darauf verlassen, dass er diese Daten jemals wieder sieht.

...:cat:...

Nogge 22. Jul 2005 13:32

Re: TTreeNode um eine weitere Variable erweitern
 
Ja, Leute...ist ja jut..ER konnte (!) es nicht machen, da er den Code bisher nur theoretisch (ja ich weiß, fehlerhaft), d.h. ohne zu kompilieren, durchgegangen ist. Ja, ich habe Fehler gemacht, zufrieden? Danke.

sakura 22. Jul 2005 14:27

Re: TTreeNode um eine weitere Variable erweitern
 
Zitat:

Zitat von Nogge
Ja, Leute...ist ja jut..ER konnte (!) es nicht machen, da er den Code bisher nur theoretisch (ja ich weiß, fehlerhaft), d.h. ohne zu kompilieren, durchgegangen ist. Ja, ich habe Fehler gemacht, zufrieden? Danke.

Keine Sorge, mir ging es nicht um Dich, sondern nur um eine der unfundierten Aussagen welche Dir helfen sollte :zwinker:

...:cat:...

Nogge 22. Jul 2005 19:53

Re: TTreeNode um eine weitere Variable erweitern
 
Ich habe früher eine weitere Methode benutzt, um eine Variable in Data zu speichern. Damals bin ich mit Data so umgegangen:
Delphi-Quellcode:
  // speichern
  Node.Data:=Pointer(Variable);
  // laden
  Variable:=VariablenTyp(Node.Data);
Die Variante hat IMMER funktioniert, jedoch kann ich damit nicht mehr als einen Wert speichern. Dazu eine Frage: Wie wird hier mit dem Speicher umgegangen, d.h. wieso funktioniert das ohne New (und Dispose)?

jfheins 22. Jul 2005 20:26

Re: TTreeNode um eine weitere Variable erweitern
 
Weils wahrscheinlich entweder ein integer war - wie der Pointer auch, oder ei String bzw. ein Objekt, die sowiso schon Poniter sind ;)


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:15 Uhr.
Seite 3 von 4     123 4      

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