Hola, tengo problemas con mostrar las fotografias de una base de datos(firebird), estoy desarrollando en delphi 7, tengo el siguiente codigo:
Código Delphi
[-] procedure TfrmFotografias.btnagregarClick(Sender: TObject);
var
mijpg:TJPEGImage;
begin
if((qryMiembros.Active) and (not qryMiembros.IsEmpty)) then begin
qryInsFoto.ParamByName('cve_rnm').AsString:=
qryMiembros.FieldByName('cve_rnm').AsString;
if OpenPictureDialog1.Execute then begin
Image1.Picture.LoadFromFile(OpenPictureDialog1.FileName);
mijpg:=TJPEGImage.Create;
mijpg.Assign(Image1.Picture.Graphic);
if uppercase(copy(ExtractFileExt(OpenPictureDialog1.FileName),1,3))<>'.JP'
then begin
mijpg.CompressionQuality:=30;
mijpg.Compress;
end;
mijpg.SaveToFile('c:\temp.jpg');
qryInsFoto.ParamByName('foto').LoadFromFile('c:\temp.jpg',ftBlob);
qryInsFoto.ExecSQL;
mijpg.Free;
qryFotos.Active:=false;
qryFotos.ParamByName('cve_rnm').AsString:=
qryMiembros.FieldByName('cve_rnm').AsString;
qryFotos.Active:=true;
if not qryFotos.IsEmpty then begin
mijpg:=TJPEGImage.Create;
mijpg.Assign(qryFotos.FieldByName('foto'));
Image1.Picture.Assign(mijpg);
mijpg.Free;
end;
end;
end;
end;
Este codigo me sirve para insertar las imagenes y ahora ya que estan almacenadas en la base de datos me gustaria visualizarlas en una pantalla de delphi, ¿Pero como hago este proceso?, por medio de un DBImage seria sencillo pero solo estoy manejando formato JPG y el DBImage no acepta ese formato. ¿Pueden ayudarme?.