Hola. Trabajo con Delphi 5 y he creado un componente heredado de otro al que le he añadido una serie de propiedades que necesitaba, pero me ocurre una cosa extraña. Algunas de las propiedades no guardan el valor que le asigno desde el Object Inspector, es decir, desde Delphi le doy una propiedad, cierro el módulo, lo vuelvo a abrir y vuelve a aparecer el valor por defecto. No me ocurre con todas, sólo con algunas. He mirado el form en texto y efectivamente, las propiedades aparecen pero con el valor por defecto.
He repasado el componente y no utilizo default en las property, sino que en el create del objeto se dan los valores por defecto (así tengo entendido que es como hay que hacerlo), y después si en Delphi le asigno otro valor a una propiedad, prevalece este último.
Un ejemplo de propiedad que tengo y que no se guarda es el siguiente:
Código:
TMiPanel = class(TPanel)
private
{ Private declarations }
....
FLineWidth : integer;
...
public
constructor Create(AOwner: TComponent); override;
...
published
...
property LineWidth : integer read FLineWidth write SetLineWidth;
...
En el create del componente tengo:
Código:
... FLineWidth:=0; ...
El procedimiento es:
Código:
procedure TMiPanel.SetLineWidth(const Value: integer);
begin
FLineWidth := Value;
Paint();
end;

¿que raro no?
¿Alguien sabe de donde puede venir el problema?
Salu2.