tecnofine 0 Denunciar post Postado Junho 24, 2009 Eu preciso pegar uma imagem do banco de dados e passar para Timage, e não gostaria de usar dbimage porque minhas imagens precisa mostrar o fundo transparente. Por exemplo quando tenho um edit eu faço assim: edit1.text:=table1.fieldbyname('Nome').asstrig; eu preciso desse jeito só que usando o timage e campo da tabela imagem é blob image1. ? := table1.fieldbyname('FOTO'). ? ; Seria assim, se for o que coloco no lugar do ponto de interrogação (?)... Obrigada pela atenção Compartilhar este post Link para o post Compartilhar em outros sites
Chrnos 30 Denunciar post Postado Junho 24, 2009 Dê uma lida nestes dois tópicos que estão na seção Laboratório de Scripts Como ter fotos/imagens em seu aplicativo, Imagens/fotos sem gravar em tabela... Gravacao e leitura de campo Imagem em banco de dados []'s Compartilhar este post Link para o post Compartilhar em outros sites
tecnofine 0 Denunciar post Postado Junho 24, 2009 Obrigada por responder. Deu uma olhada no código do primeiro artigo e tentei implementar porém da um erro No meu formulario eu ativo webcam e salvo no banco de dados com esse codigo abaixo: //poderia ver se está certo pois minha intenção é salvar como bitmap VideoCap1.SaveToClipboard; BMP:=TBitMap.Create; BMP.LoadFromClipboardFormat(cf_BitMap,ClipBoard.GetAsHandle(cf_Bitmap),0); dm.qryFOTO.Assign(BMP); ai depois eu faço busca por dbnavigator para exbir as fotos da tabela no Timage e usei esse abaixo codigo: Image1.Picture.LoadFromFile(dm.qryFOTO.AsString); Porém dá esse erro estranho "Project system.exe raised expection class EInvalidGraphic with message 'Unknown picture file extension(." O que signfica e como posso corrigi-lo? Obrigada pela atenção Compartilhar este post Link para o post Compartilhar em outros sites
Chrnos 30 Denunciar post Postado Junho 24, 2009 Que extensão está usando quando salva a imagem? Se for JPeg, vai ter que por na lista de uses do form o jpeg, pois o erro que a rotina está retornando é Extensão de arquivo de imagem desconhecida. []'s Compartilhar este post Link para o post Compartilhar em outros sites
tecnofine 0 Denunciar post Postado Junho 24, 2009 Então estou salvando como bmp veja o codigo: VideoCap1.SaveToClipboard; BMP:=TBitMap.Create; BMP.LoadFromClipboardFormat(cf_BitMap,ClipBoard.GetAsHandle(cf_Bitmap),0); dm.qryFOTO.Assign(BMP); Compartilhar este post Link para o post Compartilhar em outros sites
Chrnos 30 Denunciar post Postado Junho 24, 2009 Você disse que se baseou no primeiro artigo correto? Neste primeiro artigo, a imagem não foi salva no BD, apenas o caminho que leva até ela... assim, para carregar você teria que passar o caminho da imagem no pc na linha Image1.Picture.LoadFromFile(dm.qryFOTO.AsString);. Ao que pude entender (já que não tenho como testar seu código agora), você está salvando a imagem direto no BD, estou correto? Se for, o segundo artigo trata sobre este assunto na procedure LoadImage. []'s Compartilhar este post Link para o post Compartilhar em outros sites
Raficcha 1 Denunciar post Postado Junho 25, 2009 Utilize uma variavel grande (pode ser AnsiString ou de preferencia variant).. passe os valores da tabela para esta variavel (pode ser um buffer tambem) variavel_1 := table1.fieldbyname('Nome').asstrig; depois grave esta variavel em um arquivo. depois de feito isso, utilize o arquivo com a imagem aonde precisar. salve a imagem em uma pasta temporaria do sistema Compartilhar este post Link para o post Compartilhar em outros sites