Fórum De Campo Blob para componente Image #186154
03/10/2003
0
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
Curtir tópico
+ 0
Responder
Posts
04/10/2003
Afarias
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+
Responder
Gostei + 0
14/02/2004
Xadriano
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
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)