folgende Situation:
ich habe ein Object:
Code: Alles auswählen
type
TObj = class
public
Fields:TFPObjectList;
constructor Create();
procedure AddField(_a:string);
procedure AddFields();
end;
...
implementation
constructor TObj.Create();
begin
AddFields();
end;
und ein anderes Objekt vererbt von "TObj":
Code: Alles auswählen
type
TObj_test = class(TObj)
public
procedure AddFields();
end;
..
implementation
procedure TObj_test.AddFields();
begin
AddField('Feld1');
AddField('Feld2');
AddField('Feld3');
end;
ich möchte beim Createn von TObj_test die procedure AddFields(); ausführen sodass diese die Felder in Fields reinschreibt. Jedoch wird diese aus dem vererbten Objekt TObj aufgerufen, also die leere Procedure.
gibt es irgendwie eine Möglichkeit die beiden Objekte so zu verbinden dass ich später mehrere instanzen erstellen kann wie zB TObj_test_2, TObj_test_3, TObj_test_4 usw. die alle von Tobj abgeleitet werden aber andere Werte in Fields speichern?
Edit:
im Endeffekt möchte ich folgendes:
Code: Alles auswählen
procedure TForm1.Button1Click(Sender: TObject);
begin
obj_test:=TObj_test.Create();
//beim Createn werden dann die vordefinierten Felder im TObj_test in obj_test.Fields abgelegt -> Feld1, Feld2 Feld3 .... und dann:
ShowMessage(IntToStr(obj_test.Fields.Count)); // ->> sollte dann die Anzahl der gespeicherten Felder ausgeben
end;