ich hab jetzt mal nicht deine Komponenten getestet, aber ich mach sowas meißt nur einfach so:
Delphi-Quellcode:
Procedure TForm1.FormCreate(Sender: TObject);
Begin
Edit1.OnExit(Edit1);
End;
Procedure TForm1.Edit1Enter(Sender: TObject);
Begin
With TEdit(Sender) do Begin
BorderStyle := bsSingle;
Cursor := crDefault;
Color := clWindow;
Left := Left - 3;
ReadOnly := False;
Top := Top - 3;
End;
End;
Procedure TForm1.Edit1Exit(Sender: TObject);
Begin
With TEdit(Sender) do Begin
BorderStyle := bsNone;
Cursor := crArrow;
Color := TForm(Parent).Color;
Left := Left + 3;
ReadOnly := True;
Top := Top + 3;
End;
End;
Praktisch schalte ich nur die Ansicht vom Edit um
und nutze kein zusätzliches Label.
PS: das im OnCreate ist nur dafür da, wenn das Edit zur Design-Zeit als edit sichtbar ist und erst beim Start umgestellt wird
(und die Ereignisse sind für mehrere Edits nutzbar ... muß man diesen dann nur für OnExit und OnEnter zuweisen)