Einzelnen Beitrag anzeigen

Benutzerbild von Sinspin
Sinspin

Registriert seit: 15. Sep 2008
Ort: Dubai
665 Beiträge
 
Delphi 10.3 Rio
 
#29

AW: Komponente (TImage & TLabel) -> Image wird nicht angezeigt

  Alt 17. Mai 2024, 12:31
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;
Stefan
Nur die Besten sterben jung
A constant is a constant until it change.
  Mit Zitat antworten Zitat