Este componente, que no sirve para nada, muestra como hacer propiedades con otras propiedades añadidas.
Para probarlo solo tienes que bajartelo e instalarlo con component-install
El componente incluye el fichero DCR para que incluyas el icono de chiquito en la paleta de componentes, para descargar el zip, haz clic sobre la imagen de Chiquito.
[HTML]
<a href="http://mandacojones.com/delphi/componentes/TorpedoDeLaPradera.zip"><img src="http://mandacojones.com/delphi/componentes/TorpedoDeLaPradera.jpg" border=0></a>[/HTML]
Código Delphi
[-]
unit TorpedoDeLaPradera;
interface
uses Windows, Messages, SysUtils, Classes;
type
TTipoJander = ( NoPuedor, Comorl, Fistro);
TPropiedadJander = class(TPersistent)
private
FGrijander: String;
FCobarde: Boolean;
FTipoJander: TTipoJander;
FOwner: TPersistent;
protected
function GetOwner: TPersistent; override;
public
constructor Create(AOwner: TPersistent);
published
property Grijander: String read FGrijander write FGrijander;
property Cobarde: Boolean read FCobarde write FCobarde;
property TipoJander: TTipoJander read FTipoJander write FTipoJander default NoPuedor;
end;
TTorpedoDeLaPradera = class(TComponent)
private
FJander: TPropiedadJander;
protected
public
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
published
property Jander: TPropiedadJander read FJander write FJander;
end;
procedure Register;
implementation
procedure Register;
begin
RegisterComponents('ClubDelphi', [TTorpedoDeLaPradera]);
end;
constructor TPropiedadJander.Create(AOwner: TPersistent);
begin
inherited Create;
FGrijander := 'Jaaarl';
FTipoJander := NoPuedor;
FOwner := AOwner;
end;
function TPropiedadJander.GetOwner: TPersistent;
begin
Result := FOwner;
end;
constructor TTorpedoDeLaPradera.Create(AOwner: TComponent);
begin
inherited;
FJander:= TPropiedadJander.Create(Self);
end;
destructor TTorpedoDeLaPradera.Destroy;
begin
if Assigned(FJander) then FJander.Free;
inherited;
end;
end.