Dein Konstruktor ist auch falsch
Jedes Control ist auch eine Komponente; logisch weil von TComponent sich alle Controls ableiten.
Das Problem bzw. die Einschränkung ist nun, dass alle Klassen, die von TComponent ableiten folgenden Konstruktor verwenden
MÜSSEN:
constructor Create(AOwner: TComponent); virtual;
Man darf zwar einen abweichenden Konstruktor erstellen, aber dieser Konstruktor wird von der
VCL niemals aufgerufen!
Die
VCL kennt deinen Konstruktor nicht und kann ihn daher nicht aufrufen.
Alle Daten (mit Ausnahme des Owners) müssen über Properties oder Methodenaufrufe in das Objekt gebracht werden.