Delphi-Quellcode:
// folgende properties würde ich gerne mit den properties aus den eigenen Subkomponenten ersetzen
property I_Picture: TPicture read GetImage write SetImage;
property L_Caption: TCaption read GetLabelCaption write SetLabelCaption;
property L_Font: TFont read GetLabelFont write SetLabelFont;
Delphi-Quellcode:
type
TMyImage = class(TImage)
private
public
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
published
property Picture;
property Visible;
end;
TMyLabel = class(TLabel)
private
public
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
published
property Caption;
property Visible;
end;
Wenn die Komponenten in Delphi schöner implementiert wären, wäre das so einfach wie in deinem Beispiel. Leider ist es nicht so einfach.
Alles was Du nicht unter
published haben willst must Du in deiner Ableitung als
public deklarieren. Weglassen bedeutet das es in der gleichen Sichtbarkeit bleibt wie es ist.
Dann könntest du das so machen:
Delphi-Quellcode:
public
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
published
property ImageProps: TMyImage read FImage;
property LabelProps: TMyLabel read FLabel;
property Align;
property Anchors;
property Visible;
end;