Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.164 Beiträge
 
Delphi 12 Athens
 
#2

Re: Typprüfung bei TTreeNode.Data

  Alt 17. Nov 2005, 22:27
Das kannst du gleich mal wieder vergessen, denn der Typ von Data ist und bleibt immer POINTER, egal was du da reinpackst.

Wenn, dann mußt du dir schon selber irgendwie die nötigen Daten(Typenkennung) mitgeben.
z.B. eine Signatur innerhalb Daten.


Delphi-Quellcode:
Type TS2DGroup = Record
    Typ: Byte;
    ... {eigene Daten}
  End;
  TS3DGroup = Record
    Typ: Byte;
    ... {eigene Daten}
  End;


if PByte(Node.Data)^ = 3 then {is TS3DGroup}

if PS3DGroup(Node.Data)^.Typ = 3 then {is TS3DGroup}
Du mußt hierbei aber auch selber dafür sorgen, daß die richtige Signatur im Record vorhanden ist ... also du mußt demnach selber z.B. die 3 für TS3DGroup in Typ eintragen.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat