AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

RTTI auch zur Designzeit?

Ein Thema von snook · begonnen am 7. Feb 2011 · letzter Beitrag vom 7. Feb 2011
Antwort Antwort
snook

Registriert seit: 25. Jun 2010
94 Beiträge
 
Delphi 2005 Professional
 
#1

RTTI auch zur Designzeit?

  Alt 7. Feb 2011, 20:49
hoffe der titel ist nicht zu verwirrden gewählt. will eigentlich nur wissen, in wiefern es möglich ist die RTTI zur Designzeit zu verwenden, bsw. in einem property editor
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: RTTI auch zur Designzeit?

  Alt 7. Feb 2011, 21:06
Es kommt drauf an, was du genau von dieser wissen willst.

Die Codes, welche du in der VCL, zur Designzeit laufen läßt, arbeiten ja mit (Design)Packages und auf die geladenen Codes der Packages hast du ganz normal Zugriff, so als liefe der Code in einem eigenem Programm.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
snook

Registriert seit: 25. Jun 2010
94 Beiträge
 
Delphi 2005 Professional
 
#3

AW: RTTI auch zur Designzeit?

  Alt 7. Feb 2011, 21:33
also ich habe ne unit, die mir zur laufzeit informationen über die public und published methoden einer komponente liefert. das läuft dann über typinformationen die ich aus der rtti bekomme. ich habe das ganze dann in ein designzeit package gepackt, allerdings bekomme ich zur designzeit im OI nur eingeschränkte informationen über die methoden. daher hab ich mich mal gefragt, ob bestimmte, also z.b. erweiterte typinformationen nur zur laufzeit zur verfügung stehen...
  Mit Zitat antworten Zitat
snook

Registriert seit: 25. Jun 2010
94 Beiträge
 
Delphi 2005 Professional
 
#4

AW: RTTI auch zur Designzeit?

  Alt 7. Feb 2011, 21:46
ich häng mal die units ran, ist vielleicht auch für andere ganz interessant, bin ich dank dem forum drauf gestoßen, nach einiger sucharbeit

das ganze lässt sich dann zum beispiel so anwenden:

Delphi-Quellcode:
{$METHODINFO ON}
uses HVMethodSignature, HVMethodInfoClasses;

type
  TestKlasse = class(TComponent)
  private
    procedure ShowMethods;
  public
    function LiesReal: real;
    SchreibReal(value: Real);
  end;

  var Test: TestKlasse;

implementation
  
procedure TestKlasse.ShowMethods;
var Info: TClassInfo;
    i : integer;
begin
  GetClassInfo(Klasse.ClassInfo,Info);
  for i := Low(Info.Methods) to High(Info.Methods) do
    ShowMessage(MethodSignatureToString(Info.Methods[i]));
end;
Angehängte Dateien
Dateityp: pas HVMethodInfoClasses.pas (4,5 KB, 3x aufgerufen)
Dateityp: pas HVMethodSignature.pas (5,7 KB, 3x aufgerufen)
Dateityp: pas HVVMT.pas (12,9 KB, 3x aufgerufen)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:42 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