Moin !
Angenommen ich habe 3 Klassen in meiner Anwendung:
TProject
TProject_Text
TProject_RTF
TProject_Text & TProject_RTF sind von TProject abgeleitet.
Nun würde ich gerne dynamisch eine Liste aufbauen können und zwar mit allen Klassen die von TProject abgeleitet sind.
Der User würde dann eine Auswahl bekommen was er für ein Projekt erstellen mag.
Da aber TProject_Text & TProject_RTF für einen User belanglose Namen sind wäre es gut wenn man Klasseneigenschaften definieren könnte. Als Beispiel ein einfacher String der für den User aussagekräftiger ist wie z.B. TProject_Text > "Projekt Eintrag für normalen Text".
Ich habe es mal mit RegisterClass und FindClass versucht. Leider klappt das RegisterClass schon nicht.
"[DCC Fehler] DeviceRoot.pas(152): E2010 Inkompatible Typen: 'TPersistentClass' und 'Class reference'"
Müsste ich dann alle Klassen von TPersistent ableiten?
Also anstatt
type TInputDevice = class
das
type TInputDevice = class(TPersistent)
Ich habe hier
http://delphi.about.com/library/weekly/aa080905a.htm was gefunden was in etwa in die Richtung geht. Allerdings werden dort die Klassen nicht ermittelt sondern sind fest in eine ListBox eingetragen.