dicas show delphi

DICAS

Visite a biblioteca de dicas da comunidade.

Saiba mais
sombra
Artigos Show Delphi

ARTIGOS

Abordagens detalhadas sobre assuntos diversos.

Saiba mais
sombra
iniciantes show delphi

INICIANTES

Aprenda a programar de um modo simples e fácil.

Saiba mais
sombra
downloads show delphi

DOWNLOADS

Acesse os materiais exclusivos aos membros.

Saiba mais
sombra
voltar

PARA QUEM GOSTA DE DELPHI

Como exibir uma imagem salva no banco de dados?

Recuperar uma imagem jpg contida em um campo blob?
Neste exemplo, uma imagem é carregada de um campo blob e exibida em um TImage.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
// É necessário estar declarado jpeg, Classes e DB
{ Em versões mais recentes, declare Vcl.Imaging.jpeg,
System.Classes e Data.DB }
 
procedure RefreshImage(Field : TField; Img : TImage);
var
  vJpeg   : TJPEGImage;
  vStream : TMemoryStream;
begin
  { Verifica se o campo esta vázio. }
  if not Field.IsNull then
  begin
 
    { Cria objeto do tipo TJPEG, e objeto do tipo MemoryStream}
    vJpeg   := TJPEGImage.Create;
    vStream := TMemoryStream.Create;
 
    { Trata o campo como do tipo BLOB e salva o seu conteudo na memória. }
    TBlobField(Field).SaveToStream(vStream);
 
    { Ajusta a posicao inicial de leitura da memória }
    vStream.Position := 0;
 
    { Carrega da memoria os dados, para uma estrutura do tipo TJPEG
      (A partir da posicao 0)}
    vJpeg.LoadFromStream(vStream);
 
    { Exibe o jpg no Timage. }
    Img.Picture.Assign(vJpeg);
 
    { Libera a memoria utilizada pelos componentes de conversão }
    vJpeg.Free;
    vStream.Free;
  end;
end;
 
// Exemplo de uso
procedure TForm1.Button1Click(Sender: TObject);
begin
  RefreshImage(DataSet1.FieldByName('LOGOTIPO'), ImgLogotipo);
end;

Dúvidas ou sugestões, deixe nos comentários do post.

  • InfusTec
  • 2 comentários
  • 11 de março de 2015

2 respostas para “Como exibir uma imagem salva no banco de dados?”

  1. ednilson disse:

    Obrigado!!
    Usei e funcionou!!!

  2. Leandro disse:

    Olá, gostaria de saber onde saiu esse ImgLogotipo no final?

Deixe um comentário

Ir ao topo

© 2024 Infus Soluções em Tecnologia - Todos os Direitos Reservados