Results 1 to 4 of 4

Thread: zoeken naar een property in een object

  1. #1
    John Kuiper
    Join Date
    Apr 2007
    Location
    Almere
    Posts
    8,325

    zoeken naar een property in een object

    Stel, ik heb
    Delphi Code:
    1. TMyObject = class
    2.   fobj1 : string;
    3.   fobj2 : string;
    4.   fobj3 : integer;
    5. public
    6.   property obj1 : string read fobj1 write fobj1;
    7.   property obj2 : string read fobj2 write fobj2;
    8.   property obj3 : integer read fobj3 write fobj3;

    Kan ik de property van een object op basis van een variable vinden?
    Delphi Code:
    1. findproperty('obj2');
    Delphi is great. Lazarus is more powerfull

  2. #2
    Fornicatorus Formicidae VideoRipper's Avatar
    Join Date
    Mar 2005
    Location
    Vicus Saltus Orientalem
    Posts
    5,292
    Aannemende dat je onder "Een variabele" een string bedoeld die variabel is:

    Alleen met RTTI, maar dan moeten de properties op z'n minst published zijn.
    (Het kan zijn dat er bij latere Delphi-versies, met Extended RTTI, minder strikte beperkingen zijn)

    Als starting point voor je zoektocht:
    Eenvoudige properties (integers, strings, ...) uitlezen kan met GetPropValue,
    schrijven kan met SetPropValue in de Typinfo-unit.
    Last edited by VideoRipper; 28-Sep-18 at 17:42.
    TMemoryLeak.Create(Nil);

  3. #3
    John Kuiper
    Join Date
    Apr 2007
    Location
    Almere
    Posts
    8,325
    Was ik bang voor. Ik wil eigenlijk geen gebruik maken van RTTI. Maar ik snap wel waarom sommige componenten dat doen.
    Delphi is great. Lazarus is more powerfull

  4. #4
    mov rax,marcov; push rax marcov's Avatar
    Join Date
    Apr 2004
    Location
    Ehv, Nl
    Posts
    9,747
    Variabele namen bestaan gewoon niet meer na compilatie. RTTI en debuginfo (indien in de EXE) zijn de enige uitzonderingen. "Published" is ook een vorm van RTTI

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •