Hola,
Yo creo que podrías repasar algún que otro texto al respecto, y fijarte en cuantos componentes consideres oporturno. En todo caso hay va un ejemplo muy sencillo de un componente con un par de propiedades... qué sé yo... me he puesto a escribir algo y me ha salido lo siguiente. No tiene utilidad ninguna más allá de lo que se deje entrever. Insisto en lo primero que he dicho.
Código Delphi
[-]
unit UAmigo;
interface
uses
Classes;
type
TSexo = (hombre, mujer);
TAmigo = class(TComponent)
private
FSexo: TSexo; FNombre: string; FApellidos: string; FTratamiento: string;
FNivelAmistad: integer;
procedure SetSexo(value: TSexo);
public
constructor Create(AOwner: TComponent); override;
public
property Nombre: string read FNombre write FNombre;
property Apellidos: string read FApellidos write FApellidos;
property Sexo: TSexo read FSexo write SetSexo default hombre;
property NivelAmistad: integer read FNivelAmistad default 5;
end;
implementation
constructor TAmigo.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
FSexo := hombre;
FNivelAmistad := 5;
end;
procedure TAmigo.SetSexo(value: TSexo);
begin
if value <> FSexo then FSexo := value;
case FSexo of
mujer: Self.FTratamiento := 'Doña';
hombre: Self.FTratamiento := 'Don ';
end;
end;
end.