Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Algorithmen, Datenstrukturen und Klassendesign (https://www.delphipraxis.net/78-algorithmen-datenstrukturen-und-klassendesign/)
-   -   indirekt auf Objekt instanz attribute zugreifen? (https://www.delphipraxis.net/159116-indirekt-auf-objekt-instanz-attribute-zugreifen.html)

Kellerassel 15. Mär 2011 12:01


indirekt auf Objekt instanz attribute zugreifen?
 
Hallo alle Miteinander


weiß jemand ob es möglich ist indirekt auf die Attribute einer Objektinstanz zuzugreifen?


Beispiel:

Delphi-Quellcode:
type
  TGL_Cylinder = class
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
    durchmesser,hoehe:real;
  end;



..Irgendeine Procedure

var
meinobjekt:TGL_Cylinder;
eigenschaft:string;

begin
meinobjekt:=TGL_Cylinder.create;

eigenschaft:='durchmesser';

meinobjekt.eigenschaft:=5;
:roll:


so geht es logischerweise nicht, das ja eine Onbjekteigenschaft kein String ist.

weiß jemand Rat?

:gruebel:

DeddyH 15. Mär 2011 12:05

AW: indirekt auf Objekt instanz attribute zugreifen?
 
Vielleicht (aber nur äußerst vielleicht) ist da etwas mit RTTI zu machen, sofern Du die Klasse ändern kannst.

Kellerassel 15. Mär 2011 12:16

AW: indirekt auf Objekt instanz attribute zugreifen?
 
Danke für die schnelle Antwort, aber das scheint nicht das Richtige zu sein. Es wird ja nicht auf die Attribute eines Objekts eingegangen, sondern auf die Referenz.

:roll:

DeddyH 15. Mär 2011 12:20

AW: indirekt auf Objekt instanz attribute zugreifen?
 
Wieso? Du kannst z.B. mit Delphi-Referenz durchsuchenIsPublishedProp prüfen, ob das Objekt eine bestimmte published-Eigenschaft besitzt.

Kellerassel 15. Mär 2011 12:47

AW: indirekt auf Objekt instanz attribute zugreifen?
 
Entschuldige du hast völlig recht.

Grundsätzlich ist es genau das was ich möchte, jetzt muss ich mich nur um den puplished kram kümmern, werde mal ein wenig probieren.


Danke für die schnelle Hilfe:hello:


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:40 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