Si tu componente hereda de TControl, bien podrías utilizar la propiedad ParentColor que por defecto es True.
Código Delphi
[-]
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls;
type
TElComponenteDePascalutn2003 = class(TCustomControl)
protected
procedure Paint; override;
published
property ParentColor;
property Color;
end;
TForm1 = class(TForm)
procedure FormCreate(Sender: TObject);
private
public
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TElComponenteDePascalutn2003.Paint;
begin
inherited;
Canvas.Brush.Color := clBlack;
Canvas.Ellipse(ClientRect);
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
Color := clBlue;
with TElComponenteDePascalutn2003.Create(Self) do
begin
Parent := Self;
BoundsRect := Rect(0, 0, 100, 100);
Visible := True;
end;
with TElComponenteDePascalutn2003.Create(Self) do
begin
Parent := Self;
BoundsRect := Rect(100, 0, 200, 100);
Color := clRed;
Visible := True;
end;
end;
end.