Hallo Zusammen,
Doch, doch, das meine Komponente Owner des Labels ist, ist völlig in Ordnung, ich bin nur nicht darauf gekommen das es geht.
Also heißt es bei mir jetzt:
Code:
constructor TMsDatumCombo.create (aOwner: TComponent);
begin
inherited create (aOwner);
fOwner := aOwner;
fShowLabel := true;
fCaption := '';
fLabel := TLabel.create (self); // so???
with fLabel do
begin
left := self.left;
top := self.top;
focusControl := self;
parent := self.parent;
Caption := self.Caption;
end;
self.left := self.left + 120;
end;
Das funktioniert fehlerlos, Problem ist, dass der Label nicht zu sehen ist, jedenfalls nicht für meinen Screenreader (Deshalb übrigens auch immernoch D5
).
Ist ja auch eigentlich klar, dann das Besitzende Form hat ihn ja nicht in seiner Komponentenliste...
Hab ich da noch einen Fehler drin?
Löse ich das ganze über eine Methode (init), die im onShow des Formulars aufgerufen wird, ist alles schön, aber das ist natürlich nicht der Sinn.
Könnt ihr euch das bitte nochmal anschauen?
Ich häng' mal den Quelltext dran.
Herzlich grüßt
Moo