Ver Mensaje Individual
  #2  
Antiguo 29-06-2007
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Reputación: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

A ver si dices algo así... (que hace poco me he pegado con ello):

Código Delphi [-]
unit UComponente;

interface

uses
  Classes;

type
  TElementos = class;
  
  TComponente = class(TComponent)
  private
    FElementos: TElementos;
    procedure SetElementos(elementos: TElementos);
  public
    constructor Create(AOwner: TComponent); override;
    destructor Destroy(); override;
  published
    property Elementos: TElementos read FElementos write SetElementos;
  end;

  TElemento = class(TCollectionItem)
  private
    FNombre: string;
  published
    property Nombre: string read FNombre write FNombre;
  end;

  TElementos = class(TCollection)
  end;

procedure Register;

implementation

procedure Register;
begin
  RegisterComponents('Samples',[TComponente]);
end;

{ TComponente }

constructor TComponente.Create(AOwner: TComponent);
begin
  inherited Create(AOwner);
  FElementos := TElementos.Create(TElemento);
end;

destructor TComponente.Destroy();
begin
  FElementos.Free();
  inherited Destroy();
end;

procedure TComponente.SetElementos(elementos: TElementos);
begin
  FElementos.Assign(elementos);
end;

end.
Archivos Adjuntos
Tipo de Archivo: zip Componente.zip (906 Bytes, 13 visitas)
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita