Fórum Problemas ao carregar imagem no DBImage #308103
06/01/2006
0
após preencher o cadastro e no mesmo salvar uma imagem no banco de dados (Oracle), quando vou consultar o registro que inseri a imagem foi gravada sem problemas porém ela não é exibida corretamente, na maioria das vezes fica uma parte dela na cor preta. Na maioria das vezes um pedaço na parte superior da imagem.
Alguém sabe por que isso ocorre e o como é consertado isso?
Obrigada.
Barbara.michele
Curtir tópico
+ 0Posts
07/01/2006
Edilcimar
Gostei + 0
08/01/2006
Barbara.michele
O campo é do tipo BLOB e o banco é Oracle.
Bom antes de dar o post no registro estou usando os comandos abaixo p/carregar a imagem no TImage:
if OpenPictureDialog.Execute then begin
EMPRESA.Edit;
EMPRESALOGOTIPO.LoadFromFile(OpenPictureDialog.FileName);
end;
Valeu
Gostei + 0
08/01/2006
Edilcimar
Gostei + 0
13/01/2006
Barbara.michele
Estou usando o DBImage e utilizando para manipulação dos registros o componente TUpdateSQL, logo não há nenhum código específico para salvar no banco e nem para recuperar do banco e exibir na tela.
Obrigada.
Gostei + 0
13/01/2006
Michael
O problema acontece que qualquer imagem? Se sim, mas de maneiras diferentes - como ficar na cor preta outras partes da figura - então pode ser que o componente [b:fccd574a28]TDBImage [/b:fccd574a28]tenha o recursos de transparência ativado por default. Não conheço o funcionamente interno deste controle, mas verifiquei que ele não descende de [b:fccd574a28]TImage[/b:fccd574a28], e sim de [b:fccd574a28]TCustomControl[/b:fccd574a28]. Logo, não herda a propriedade [b:fccd574a28]Transparent[/b:fccd574a28], por exemplo. Por alguma razão obscura a Borland preferiu não criá-lo com base em [b:fccd574a28]TImage[/b:fccd574a28].
Tente o seguinte: acrescente um [b:fccd574a28]TImage [/b:fccd574a28]no seu form e configure a propriedade [b:fccd574a28]Transparent [/b:fccd574a28]para [b:fccd574a28]False[/b:fccd574a28], e no evento [b:fccd574a28]AfterScroll [/b:fccd574a28]do seu [b:fccd574a28]DataSet[/b:fccd574a28], digite o código a seguir:
Image.Picture.Assign(DBImage.Picture)
Se der certo, substitua de vez o TDBImage por TImage.
[]´s
Gostei + 0
13/01/2006
Barbara.michele
Substitui o TDBImage por TImage, conforme orientou, e o problema persiste, até salvei outra imagem para ver se a imagem antiga já estava com problema mas não adiantou.
Já não sei mais o q fazer.....
Gostei + 0
13/01/2006
Thomaz_prg
Gostei + 0
16/01/2006
Barbara.michele
Poderia ser alguma configuração do campo no banco de dados?
Como já falei estou usando o Oracle e o campo está definido como
mm_assinatura BLOB
Bom para selecionar e carregar a imagem na tela, antes de salvar, uso apenas o código:
if OpenPictureDialog.Execute then begin
Usuario.Edit;
UsuarioMM_ASSINATURA.LoadFromFile(OpenPictureDialog.FileName);
end;
Alguém tem idéia do que está ocorrendo?
Gostei + 0
13/02/2006
Barbara.michele
Gostei + 0
09/03/2006
Command
O problema somente ocorre no Windows XP, de forma aleatória. As vezes uma vez em cada 10, tentativas ocorre o problema outra 1 em cada 30. Outra hora ocorre 3 vezes consecutivas.
Uso um comando QRImage1.Picture.LoadFromFile(nomedoarquivo); no envento before print do relatorio.
Minha imagem fica inteira preta e já tentei um monte de soluções, como por exemplo deixar a imagem adicionada dentro do componente e remover o código LoadFromFile() .
Você conseguiu resolver seu problema, ou alguem pode me ajudar?
Gostei + 0
09/03/2006
Eliasexner
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)