[firebase-br] Grava JPG no banco (OFF 1/2 Urgente)
Francisco Thiago
jeandeadlucky em yahoo.com.br
Seg Fev 21 13:20:22 -03 2005
Gente, o nosso amigo Fausto aqui da lista me passou duas procedure de como
fazer.
Acredito que ele não teria problema de postar aqui :D
Eu estava fazendo já algo.... mas acontece que sempre dava um erro de
BitMap.... ai eu descobri que o problema estava no TDBImage. Usem o TImage e
controlem a leitura/gravação atraves de metodos como AfterScroll ou
DataChange (TDataSource)
[]'s a todos você e muito obrigado
Francisco Thiago de Almeida
Enter&Plug Informática
Divisão: Desenvolvimento e Banco de dados
MSN: thiago em enterplug.com.br
procedure
GravaFoto(Tbl:TDataSet;Campo:TField;Foto:TImage;OpenDlg:TOpenPictureDialog );
var
BS:TStream;
MinhaImagem:TJPEGImage;
begin
OpenDlg.Filter := 'JPEG Image File (*.jpg)|*.jpg|JPEG Image File
(*.jpeg)|*.jpeg';
OpenDlg.Title := 'Carregar Foto';
if not (Tbl.State in [dsEdit, dsInsert]) then
Tbl.Edit;
if OpenDlg.Execute then
begin
if OpenDlg.FileName <> '' then
begin
BS := Tbl.CreateBlobStream((CAMPO as TBlobField),bmWrite);
MinhaImagem := TJPEGImage.Create;
MinhaImagem.LoadFromFile(OpenDlg.FileName);
MinhaImagem.SaveToStream(BS);
Foto.Picture.Assign(MinhaImagem);
BS.Free;
MinhaImagem.Free;
end;
end;
end;
procedure MostraFoto(Tbl:TDataSet;Campo:TField;Foto:TImage);
var
BS:TStream;
MinhaImagem:TJPEGImage;
begin
BS := Tbl.CreateBlobStream((CAMPO as TBlobField),bmRead);
if BS.Size > 0 then
begin
try
MinhaImagem := TJPEGImage.Create;
MinhaImagem.LoadFromStream(BS);
Foto.Picture.Assign(MinhaImagem);
except
end;
end
else
Foto.Picture.Assign(nil);
MinhaImagem.Free;
BS.Destroy;
end;
----- Original Message -----
From: "Leonardo Lima" <leonardo em softguild.com.br>
To: "FireBase" <lista em firebase.com.br>
Sent: Monday, February 21, 2005 11:11 AM
Subject: Re: [firebase-br] Grava JPG no banco (OFF 1/2 Urgente)
Caro colega Thiago:
Você pode utilizar o método LoadFromFile do parâmetro ou do campo da sua
query para fazer isso.
Sucesso.
----- Original Message -----
From: "Francisco Thiago" <jeandeadlucky em yahoo.com.br>
To: "FireBase" <lista em firebase.com.br>
Sent: Monday, February 21, 2005 11:11 AM
Subject: [firebase-br] Grava JPG no banco (OFF 1/2 Urgente)
Olá amigos,
Sim, eu analisei a questão do blob e já analisei o caso para saber se é
necessário e possível fazer isso.
Cheguei a conclusão que sim... mas tem um problema:
Eu não consigo gravar JPG no banco!!! Como eu faço? ("Delphi")
Obrigado
Francisco Thiago de Almeida
Enter&Plug Informática
Divisão: Desenvolvimento e Banco de dados
MSN: thiago em enterplug.com.br
______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
Para editar sua configuração na lista, use o endereço
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
__________ Informação do NOD32 1.987 (20050128) __________
Esta mensagem foi verificada pelo NOD32 Sistema Antivírus
http://www.nod32.com.br
__________ Informação do NOD32 1.1001 (20050217) __________
Esta mensagem foi verificada pelo NOD32 Sistema Antivírus
http://www.nod32.com.br
______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
Para editar sua configuração na lista, use o endereço
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
Mais detalhes sobre a lista de discussão lista