De Campo Blob para componente Image
Como fazer para apos uma pesquisa SQL, passar o conteudo de um campo BLOB (foto do Produto) para um componente Image
USO FIREBIRD
DBEXPRESS
Agradeço antecipadamente pela paciencia de todos, estou iniciando
USO FIREBIRD
DBEXPRESS
Agradeço antecipadamente pela paciencia de todos, estou iniciando
Nilson Junior
Curtidas 0
Respostas
Afarias
03/10/2003
depende do tipo de foto q está no banco (blob)! se form um BMP vc pode sismplesmente usar um DBImage para te poupar trabalho (se é q vc deseja usar controles DataWare) -- bom, em ´casos contrários´ vc pode usar um código como exemplificado abaixo::
{ carregando um JPG de um campo BLOB para um TImage }
{ pode ser um BMP ou qualquer outro tipo de imagem... }
{ basta pequena alteração no código }
procedure CarregarImagemDoRegistroCorrente;
var
Stm: TStream;
Jpg: TJPEGImage;
begin
with MinhaQuery do
begin
if TBlobField(FieldByName(´IMAGEM´)).BlobSize > 0 then
begin
Stm := TMemoryStream.Create;
Jpg := TJpegImage.Create;
try
TBlobField(FieldByName(´IMAGEM´)).SaveToStream(Stm);
Stm.Position := 0;
Jpg.LoadFromStream(Stm);
try
Image1.Picture.Assign(Jpg);
except
Image1.Picture.Assign(nil);
end;
finally
Stm.Free;
Jpg.Free;
end;
end else
Image1.Picture.Assign(nil);
end;
end;
T+
{ carregando um JPG de um campo BLOB para um TImage }
{ pode ser um BMP ou qualquer outro tipo de imagem... }
{ basta pequena alteração no código }
procedure CarregarImagemDoRegistroCorrente;
var
Stm: TStream;
Jpg: TJPEGImage;
begin
with MinhaQuery do
begin
if TBlobField(FieldByName(´IMAGEM´)).BlobSize > 0 then
begin
Stm := TMemoryStream.Create;
Jpg := TJpegImage.Create;
try
TBlobField(FieldByName(´IMAGEM´)).SaveToStream(Stm);
Stm.Position := 0;
Jpg.LoadFromStream(Stm);
try
Image1.Picture.Assign(Jpg);
except
Image1.Picture.Assign(nil);
end;
finally
Stm.Free;
Jpg.Free;
end;
end else
Image1.Picture.Assign(nil);
end;
end;
T+
GOSTEI 0
Xadriano
03/10/2003
Sou Iniciante em Delphi, gostaria de Saber especificamente onde colocar este código que começa com:
´procedure CarregarImagemDoRegistroCorrente;´
Desde Já Agradeço
´procedure CarregarImagemDoRegistroCorrente;´
Desde Já Agradeço
GOSTEI 0