Ver Mensaje Individual
  #12  
Antiguo 23-07-2010
Avatar de olbeup
olbeup olbeup is offline
Miembro
 
Registrado: jul 2005
Ubicación: Santiago de la Ribera (España)
Posts: 685
Reputación: 19
olbeup Va camino a la fama
Cita:
procedure TfrmConPadron.Button1Click(Sender: TObject);
var
jpg:TJPEGImage;
stream:TMemoryStream;
begin
stream:=TMemoryStream.Create;
jpg:=TJPEGImage.Create;
frmConPadron.Image1.Picture:=nil;
try
// en esta linea es que me da el error
frmdata.blofield(frmdata.st_foto.fieldbyname('imagen')).SaveToStream(stream);
stream.Seek(0, soFromBeginning);
jpg.LoadFromStream(stream);
frmConPadron.Image1.Picture.Assign(jpg);
finally
stream.Free;
jpg.Free;
end;
end;
Utiliza mejor una función como esta
Código Delphi [-]
function GetFieldToJPG(FieldName: String): TJPEGImage;
var
  Stream: TMemoryStream;
begin
  Stream := TMemoryStream.Create;
  Result := TJPEGImage.Create;

  with frmData do
  begin
    try
      TBlobField(FieldByName(FieldName)).SaveToStream(Stream);
      Stream.Position := 0;
      if (Stream.Size > 0) then
        Result.LoadFromStream(Stream)
      else
        Result := nil;
    finally
      Stream.Free;
    end;
  end;
end;


procedure TfrmConPadron.Button1Click(Sender: TObject);
begin
  frmConPadron.Image1.Picture.Assign(GetFieldToJPG('IMAGEN'));
end;
Un saludo

P.D.: A la hora de escribir código en delphi me gusta que sea elegante y atractiva.
Responder Con Cita