aus der Hilfe
Zitat:
Der Typ TComponentClass ist die Metaklasse für TComponent. Er enthält die Klassenreferenz für TComponent oder eines seiner Nachkommen.
Deine Komponenten dürften ja alle von TComponent abgeleitet sein.
Dann müsste zum ERZEUGEN der Komponente folgendes funktionieren:
Delphi-Quellcode:
var
NewComponent: TComponent;
...
NewComponent := TComponentClass(GetClass(ComponentNameAusDemStream)).Create(Self);
// NewComponent.MeineDatenLaden;
...
Hier wird es schwierig. TComponent hat keine Methode MeineDatenLaden. TComponent kann sich in einen Stream speichern und aus einem Stream laden aber das entspricht nicht Deiner individuellen Schreib- und Lesemethode.
Wenn Du hier für jede Komponente eigene Funktionen benutzen willst
TplLabel.MeineDatenSchreiben;
TplLabel.MeineDatenLesen;
TplPanel.MeineDatenSchreiben;
TplPanel.MeineDatenLesen;
wird Dir wohl nichts anderes übrig bleiben, als dies für jede Klasse explizit zu veranlassen.
Es sei denn, es gäbe eine Funktion wie...
Delphi-Quellcode:
if ExistProcedure(NewComponent, 'MeineDatenLesen') then
ExecuteProcedure(NewComponent, 'MeineDatenLesen');
Das würde mich auch freuen...
stahli