Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi TTreeNode soll auf ein anderes Objekt zeigen (https://www.delphipraxis.net/90774-ttreenode-soll-auf-ein-anderes-objekt-zeigen.html)

xZise 23. Apr 2007 21:34

Re: TTreeNode soll auf ein anderes Objekt zeigen
 
Ich bin jetzt leicht verwirrt ...
Es geht nicht mehr darum zu überprüfen ob Data vom Typ TM2MFile!
Ich weiß es jetzt in dem Speziellen Fall! Aber später, wenn es läuft, dann werde ich darauf zurückgreifen, und das anders überprüfen!
Und das zuweisen geht richtig in die Hose: Es gibt eine wunderschöne AV! :(

Ich bin verwirrt, warum jetzt an dieser unmöglichen Stelle genau das auftritt... obwohl es ja vorher funktioniert.

DGL-luke 23. Apr 2007 21:50

Re: TTreeNode soll auf ein anderes Objekt zeigen
 
av beim zuweisen :shock:

ja was machst du denn da?!

das objekt nicht erzeugt oder was? zeig mal mehr code!

Ich arbeite mit Node.Data seit AD 1328...

xZise 23. Apr 2007 22:15

Re: TTreeNode soll auf ein anderes Objekt zeigen
 
Zitat:

Zitat von DGL-luke
seit AD 1328...

Geeeeeeeeeeenau ^^

Aber back to Topic:
Ihc habe jetzt das Problem behoben indem ich statt einen Pointer die Variable zuweise...
Hier mal ein Beispiel:
Delphi-Quellcode:
// so mach ichs nun
Node.Data := TObject;
// so wars
Node.Data := @TObject
// oder (+AV)
Node.Data := Pointer(Tobject);

DGL-luke 23. Apr 2007 22:35

Re: TTreeNode soll auf ein anderes Objekt zeigen
 
Ähm....

zwischen

Delphi-Quellcode:
var
  p: Pointer;
  obj: TObject;

p := obj;
und


Delphi-Quellcode:
var
  p: Pointer;
  obj: TObject;

p := Pointer(obj);
darf doch kein unterschied sein?!

3_of_8 23. Apr 2007 22:42

Re: TTreeNode soll auf ein anderes Objekt zeigen
 
Richtig.

Seien p ein Pointer und obj ein TObject.

Delphi-Quellcode:
p:=obj;
Weißt p den Instanzenpointer von obj zu.

Delphi-Quellcode:
p:=Pointer(obj);
Das gleiche.

Delphi-Quellcode:
p:=@obj;
Weißt p einen Pointer auf den Instanzenpointer von obj zu. Also wenn der Instanzenpointer von obj auf dem Stack liegt, wird p der Wert von esp zugewiesen, z.B.

xZise 24. Apr 2007 08:43

Re: TTreeNode soll auf ein anderes Objekt zeigen
 
Aber warum sollte ich denn, wenn es beide die gleichen Vorgänge sind, mit Pointer() zuweisen? Abgesehen davon das es jetzt so geht und ich nur ungerne wieder zurückgehe, wo es ja nicht funktioniert hat!

3_of_8 24. Apr 2007 14:26

Re: TTreeNode soll auf ein anderes Objekt zeigen
 
Sollst du nicht. Ich habe nur gesagt, dass es so auch gegangen wäre und habe genau gesagt, was die einzelnen Anweisungen machen.

xZise 24. Apr 2007 15:22

Re: TTreeNode soll auf ein anderes Objekt zeigen
 
Ich meinte auch luke...

Zitat:

Zitat von DGL-luke
PS: Zuweisen so:

Delphi-Quellcode:
Node.Date := Pointer(TM2MInstance);


DGL-luke 24. Apr 2007 16:15

Re: TTreeNode soll auf ein anderes Objekt zeigen
 
hast du dich da verzitiert? das ist nämlich alt ^^


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:31 Uhr.
Seite 2 von 2     12   

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