Buenas, estoy intentando pasar datos entre formularios a través de una property, puntualmente tengo que pasar un flujo (Stream) entre ellos. La cuestión es que no doy en la tecla.
El formulario receptor
Código Delphi
[-]
TfrmDatosImprentaDigital = class(TForm)
private
FpDatos_editar: TMemoryStream;
procedure SetpDatos_editar(const Value: TMemoryStream);
procedure SetpTitulo_edicion(const Value: string);
public
property pDatos_editar:TMemoryStream read FpDatos_editar write SetpDatos_editar;
property pTitulo_edicion:string read FpTitulo_edicion write SetpTitulo_edicion;
end;
.......
procedure TfrmDatosImprentaDigital.SetpDatos_editar(const Value: TMemoryStream);
begin
FpDatos_editar := Value;
editor.Lines.LoadFromStream(FpDatos_editar);
end;
procedure TfrmDatosImprentaDigital.btnConfirmarTextoEditadoClick(
Sender: TObject);
var
stream:TMemoryStream;
begin
try
stream:=TMemoryStream.Create;
editor.Lines.SaveToStream(stream);
FpDatos_editar.LoadFromStream(stream);
finally
stream.Free;
ModalResult:=mrOk;
end;
end;
En el formulario llamador
Código Delphi
[-]
procedure TEditorDatos.llamar(texto_enriquecido:TRichEdit);
var
imprenta:TfrmDatosImprentaDigital;
begin
imprenta:=TfrmDatosImprentaDigital.Create(nil);
with imprenta do
begin
self.setTexto_enriquecido(texto_enriquecido);
pDatos_editar:=Self.getTexto_enriquecido;
if mrOk = ShowModal then
begin
self.setTexto_enriquecido(pDatos_editar);
rchGobernador.Lines.LoadFromStream(self.getTexto_enriquecido);
end;
imprenta.Free;
end;
end;
Gracias.