Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

johnatam.camargo

[Resolvido] erro na hora de salvar imagem

Recommended Posts

ae galera beleza.

to com muita dificuldade pra salvar uma imagem no access sabe..

fiz da sequinte maneira..

 

procedure TForm1.Button2Click(Sender: TObject); 
begin 
if OpenPictureDialog1.Execute then 
DBImage1.Picture.LoadFromFile( OpenPictureDialog1.FileName ); 
table1.Edit; 
end; 
end.

 

coloquei um componente table e um dbimage e openpicturedialog.

e fiz o codigo acima.

 

dae quando vejo no banco acces aparece assim no campo:

"dados binarios longos"

 

ae galera to precisando mutu disso

 

qualquer coisa c por possivel postem um codigo ae pra mim..

estarei muito grato.

Compartilhar este post


Link para o post
Compartilhar em outros sites

experimenta colocar o componente savepicturedialog... ao executar o openpicturedialog e escolher a imagem, executa tbm o savepicturedialog e informe o openpicturedialog.FileName como nome do arquivo pra ser salvo... espero ter ajudado em algo

Compartilhar este post


Link para o post
Compartilhar em outros sites

experimenta colocar o componente savepicturedialog... ao executar o openpicturedialog e escolher a imagem, executa tbm o savepicturedialog e informe o openpicturedialog.FileName como nome do arquivo pra ser salvo... espero ter ajudado em algo

entaum cara isso q eh o problema..nunca trabalhei com esses componentes..

e esse eh o motivo de tanto trabalho.

 

da uma ajuda ae veio..

 

grato

Compartilhar este post


Link para o post
Compartilhar em outros sites

beleza... vamos lá...

tipo, nem precisa usar dbimage, usa o timage mesmo (bom, eu uso ele né)... abaixo, segue um código que utilizo em meu sistema para pegar uma imagem e salvar ela em outro lugar...

OpenPictureDialog.Execute;
  ImgImagem.Picture.LoadFromFile(OpenPictureDialog.FileName);
  SavePictureDialog.Execute;
  if (ExtractFileName(SavePictureDialog.FileName) = '') then
	else
	  begin
		SavePictureDialog.FileName:= (ExtractFileName(SavePictureDialog.FileName) + '.jpg');
		  ImgImagem.Picture.SaveToFile(caminho_papel_parede + SavePictureDialog.FileName);
		  with dm.SPAltera_Imagem_Papel_Parede do
			begin
			  Parameters.ParamByName('@Foto_Papel_Parede').Value:= SavePictureDialog.FileName;
			  ExecProc;
			end;
	  end;
ou seja, ele executa o openpicturedialog e meu TImage recebe o LoadFromFile (nome do arquivo que eu selecionei) e assim que selecionar a imagem e mandar abrir, de imediato ele aparece já a janela pra salvar (SavePictureDialog.Execute)... ai ele diz que o nome do arquivo a ser salvo e o nome da imagem que eu selecionei + a extensão .jpg... ai fica simples, pego minha Stored Procedure e jogo o campo que eu quero salvar o SavePictureDialog.FileName (o nome do arquivo que eu informei, que é o nome do arquivo a ser salvo e o nome da imagem que eu selecionei + a extensão .jpg), executo a procedure e vou pra galera hehehe...

é só você entender o funcionamento... esses dois objetos sao distintos, pode-se usar um ou os dois.. sendo que, o open é para abrir a imagem e atribuir ela a um image... o save é para salvar uma imagem que já foi aberta...

 

espero ter ajudado... qualquer coisa, posta ai...

Compartilhar este post


Link para o post
Compartilhar em outros sites

beleza... vamos lá...

tipo, nem precisa usar dbimage, usa o timage mesmo (bom, eu uso ele né)... abaixo, segue um código que utilizo em meu sistema para pegar uma imagem e salvar ela em outro lugar...

OpenPictureDialog.Execute;
  ImgImagem.Picture.LoadFromFile(OpenPictureDialog.FileName);
  SavePictureDialog.Execute;
  if (ExtractFileName(SavePictureDialog.FileName) = '') then
	else
	  begin
		SavePictureDialog.FileName:= (ExtractFileName(SavePictureDialog.FileName) + '.jpg');
		  ImgImagem.Picture.SaveToFile(caminho_papel_parede + SavePictureDialog.FileName);
		  with dm.SPAltera_Imagem_Papel_Parede do
			begin
			  Parameters.ParamByName('@Foto_Papel_Parede').Value:= SavePictureDialog.FileName;
			  ExecProc;
			end;
	  end;
ou seja, ele executa o openpicturedialog e meu TImage recebe o LoadFromFile (nome do arquivo que eu selecionei) e assim que selecionar a imagem e mandar abrir, de imediato ele aparece já a janela pra salvar (SavePictureDialog.Execute)... ai ele diz que o nome do arquivo a ser salvo e o nome da imagem que eu selecionei + a extensão .jpg... ai fica simples, pego minha Stored Procedure e jogo o campo que eu quero salvar o SavePictureDialog.FileName (o nome do arquivo que eu informei, que é o nome do arquivo a ser salvo e o nome da imagem que eu selecionei + a extensão .jpg), executo a procedure e vou pra galera hehehe...

é só você entender o funcionamento... esses dois objetos sao distintos, pode-se usar um ou os dois.. sendo que, o open é para abrir a imagem e atribuir ela a um image... o save é para salvar uma imagem que já foi aberta...

 

espero ter ajudado... qualquer coisa, posta ai...

 

dae veio vo tenta implementar aki..

mais deu pra ter uma grande noção de como funciona...

 

 

valeu mesmo

Compartilhar este post


Link para o post
Compartilhar em outros sites

beleza véi... precisando é só postar... se estiver ao meu alcance........

entaum veio to cum uma pequena duvida nesse trecho

Image1.Picture.SaveToFile( + SavePictureDialog1.FileName);
		  with dm.SPAltera_Imagem_Papel_Parede do
			begin
			  Parameters.ParamByName('@Foto_Papel_Parede').Value:= SavePictureDialog.FileName;

oque seria esse 'caminho_papel_parede'?

e no meu caso estou usando table..

 

grato desde ja

Compartilhar este post


Link para o post
Compartilhar em outros sites

a sim... essa variavel é uma variavel global que criei... eu tenho uma janela de Parametros do Sistema, e nessa janela o usuário informa onde salvar a imagem, qual caminho dela... e quando a pessoa loga no sistema, de imediato essa variavel já pega ql o caminho que está lá cadastrado... então, na hora de salvar, ele pega o caminho_papel_parede (variavel que armazena o caminho que foi informado no parametro) + o nome que eu informei pra salvar, na caixa do savepicturedialog....

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.