Ver Mensaje Individual
  #1  
Antiguo 30-09-2004
sur-se sur-se is offline
Miembro
 
Registrado: may 2003
Posts: 212
Reputación: 22
sur-se Va por buen camino
Guardar propiedades en el form

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.
Responder Con Cita