Einzelnen Beitrag anzeigen

oki

Registriert seit: 30. Dez 2002
Ort: Brandshagen
1.819 Beiträge
 
Delphi 2007 Professional
 
#58
  Alt 17. Apr 2003, 19:39
ja ja Motzi,

ich hab doch nur laut nachgedacht.

Ich bin Aber schon ein Stück weiter. Folgender Code:

Delphi-Quellcode:
constructor TRealEdit.Create(AOwner: TComponent);
begin
  inherited;
  FAlignment := taRightJustify;
  OnlyReals := true;
  FLabel := TLabel.Create(self);
  FLabel.Parent := TWincontrol(AOwner);
  FLabel.Name := 'RealLabel';
// FLabel.SetSubComponent(true);
  FLabel.Caption := 'CAPTION';
  // Position des Lables setzen
  SetLabelPos;
end;
So, nun kommt der Witz. Der Besitzer (Owner) des Labels ist das RealEdit! Somit ist self der richtige Parameter im Create!

Als Parent wird der Besitzer des RealEdit verwendet, denn in diesem wird das RealEdit dargestellt. Dort soll ja auch das Label hin. Die Typkonvertierung ist nun nicht sehr elegant, da fällt euch bestimmt was zu ein.


Ich hab die ganze sache mal ausprobiert. Die hat nur einen Schönheitsfehler, das Label erscheint zur Laufzeit, aber nicht zur Designzeit. Naja, wird noch.

Die Methode SetLabelPos steht unter privat und setzt Top und Left des Labels in Abhängigkeit von Top und Left des RealEdits. Da muß man dann auch noch weitermachen.


Gruß oki
  Mit Zitat antworten Zitat