image não mostra a imagem erro

Delphi

23/04/2012

Olá, sou novo no forum e preciso de ajuda, obrigado
Obs: é um cadastro de pessoas quero somente que mostre as fotos dos clientes atraves de um componente timage1.
eu gravo somente o endereço da foto em um diretório c:
na hora do cadastro consigo gravar o endereço
mas quando estou navegando atraves dos arquivos com um dbnavigator da erro do tipo bitmap image is not valid não aceita a extensoes .bmp .jpg .jpeg

costuma dar erro e nem abre mais o executável até eu excluir a extensão no banco de dados

O banco de dados é o oracle

Procedure TF_CadPessoa.bit1
begin
if (OpenDialog1.Execute) then
dbFotoEnd.Text:=(OpenDialog1.FileName);

end;


procedure TF_Cad_Pessoa.DbFotoEndChange(Sender: TObject);
begin
If not FileExists(dbfotoEnd.text) then
begin
image1.picture := nil;
end
else
image1.Picture.LoadFromFile(DbFotoEnd.text);
end;
Marcelo Augusto

Marcelo Augusto

Curtidas 0

Respostas

Bruno Leandro

Bruno Leandro

23/04/2012

qual a extensão dos arquivos que voce esta tentando utilizar
GOSTEI 0
Joao Moreira

Joao Moreira

23/04/2012

declara nas seção uses a unit jpeg e ver se ainda ocorre o erro.
GOSTEI 0
Marcelo Augusto

Marcelo Augusto

23/04/2012

declara nas seção uses a unit jpeg e ver se ainda ocorre o erro.



ja declarei o dificil é que não aceita imagens com extensão bmp.
GOSTEI 0
Bruno Leandro

Bruno Leandro

23/04/2012

eu realizei o teste aqui e deu certo para arquivos com extensão bmp, o erro ainda é o mesmo?
GOSTEI 0
Marcelo Augusto

Marcelo Augusto

23/04/2012

eu realizei o teste aqui e deu certo para arquivos com extensão bmp, o erro ainda é o mesmo?

mudei o código mudei a propriedade DoubleBuffered do form para true, assim já aceitou jpeg e jpg mas bmp não aceita
o interessane é que o mesmo form estava funcionando com bancos mysql e firebird antes como este novo projeto é com oracle não funcionou pode ser coincidência mas não tem nada haver com o banco de dados é o delphi mesmo, antes eu havia instalado ele no programfiles do windows seven agora mudei para c: porque estava dando muitos bugs.
GOSTEI 0
Bruno Leandro

Bruno Leandro

23/04/2012

eu criei um programa de teste com um edit um botao e um image e nao mudei nenhuma propriedade de nenhum dos componentes e executou, segue o codigo

unit Unit5;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, jpeg, ExtCtrls, StdCtrls, Buttons;

type
TForm5 = class(TForm)
Edit1: TEdit;
BitBtn1: TBitBtn;
Image1: TImage;
procedure BitBtn1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
procedure teste(caminho: string);
end;

var
Form5: TForm5;

implementation

{$R *.dfm}

{ TForm5 }

procedure TForm5.BitBtn1Click(Sender: TObject);
begin
teste(edit1.Text);
end;

procedure TForm5.teste(caminho: string);
begin
If not FileExists(caminho) then
begin
image1.picture := nil;
end
else
image1.Picture.LoadFromFile(caminho);
end;

end.
GOSTEI 0
Marcelo Augusto

Marcelo Augusto

23/04/2012

eu criei um programa de teste com um edit um botao e um image e nao mudei nenhuma propriedade de nenhum dos componentes e executou, segue o codigo

unit Unit5;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, jpeg, ExtCtrls, StdCtrls, Buttons;

type
TForm5 = class(TForm)
Edit1: TEdit;
BitBtn1: TBitBtn;
Image1: TImage;
procedure BitBtn1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
procedure teste(caminho: string);
end;

var
Form5: TForm5;

implementation

{$R *.dfm}

{ TForm5 }

procedure TForm5.BitBtn1Click(Sender: TObject);
begin
teste(edit1.Text);
end;

procedure TForm5.teste(caminho: string);
begin
If not FileExists(caminho) then
begin
image1.picture := nil;
end
else
image1.Picture.LoadFromFile(caminho);
end;

end.




Valeu gente deve ser um bug do meu delphi troquei o componente e resolvido está!!!!
GOSTEI 0
POSTAR