[Lazarus-es] pasar valor a formulario

Paola Bruccoleri pbruccoleri en adinet.com.uy
Vie Nov 13 03:45:40 CET 2009


Hola..
quiero abrir un form con unos datos u otros segun sea el valor de una 
variable.
El asunto es que tengo en un grid una lista de personas. Al hacer doble 
clic quiero editar sus datos y al apretar otro botón, agregar. Muy 
simple, lo mismo de siempre. Como no voy a usar por ahora los controles 
enlazados hasta no actualizar el lazarus y ver que pasa, pensaba usar 
los dichosos Tedit, etc. y los cargo a mano segun sea la cosa.
No quiero usar una variable global que me indique lo que hacer , pensaba 
usar una propiedad de la clase de ese form, pero hay algo que no me está 
saliendo.

En el form1 puse:
   private
    { private declarations }
    FAgregar: Boolean;
    procedure SetAgregar (Value: boolean);
  public
    { public declarations }
    Property Agregar: boolean read FAgregar write SetAgregar;      

......
procedure TfrmPaciente.SetAgregar(Value: Boolean);
begin
     if Value <> FAgregar then
          Value := FAgregar;
end;   



cuando en el grid, que esta en otro form, quiero agregar un registro:
      f:= TfrmPaciente.Create(Self);
      f.Agregar:= true;
      try
          f.ShowModal;
      finally
          FreeAndNil(f);
      end;

Ahora, volviendo al form1...
en el show del form1 puse un showmessage para ver el valor que viene con 
agregar, y siempre me da false o 0 y cuando agrego, deberia devolver 1.
hice estas pruebas:
ShowMessage('tipo:'+BoolToStr(FAgregar));
ShowMessage('tipo:'+BoolToStr(self.Agregar));

evidentemente se me están enredando los cables...
me ayudan??
chauuuuuuuuuuuuu







More information about the Lazarus-es mailing list