Fórum problema p/visulizar imagem atraves de 1 path no Banco Dados #365983

10/11/2008

0

galera help por favor...

o que ta me tirando o sono agora é que tenho um banco de dados onde esta armazenado o path (caminho) da imagem que esta em um diretorio.

o que preciso? preciso que ao clicar duas vezes no dbgrid que se abra um novo formulario contendo 6 imagens pequenas, e ao clicar em uma dessas imagens ele abra outro formulario contendo 1 imagem grande da foto clicada no formulario anterior.

porem se nao houver o caminho, ocorre erro; se quiser posso enviar o programa completo pra vc analisar.

abaixo segue o codigo fonte.. a primeira parte é do duplo click no dbgrid



procedure TFormOpc.DBGrid1DblClick(Sender: TObject);
begin
try
FImages.image1.Picture.LoadFromFile(FormOpc.Table1.Fieldbyname(´foto1´).text);
FormImageGrande.image1g.Picture.LoadFromFile(FormOpc.Table1.Fieldbyname(´foto1´).text);
FImages.image2.Picture.LoadFromFile(FormOpc.Table1.Fieldbyname(´foto2´).text);
FormImageGrande.image1g.Picture.LoadFromFile(FormOpc.Table1.Fieldbyname(´foto2´).text);
//FImages.Image1.GetNamePath(FormOpc.Table1.Fieldbyname(´foto1´).text);
FImages.ShowModal;

except
FImages.Image1.Picture.LoadFromFile(´J:\evolucao_ci\fotos\semfoto.jpg´);
FormImageGrande.image1g.Picture.LoadFromFile(´J:\evolucao_ci\fotos\semfoto.jpg´);
FImages.ShowModal;
end;
end;


agora quando clico na imagem pra abrir o novo formulario com a imagem grande...


procedure TFImages.Image1Click(Sender: TObject);
begin
FormImageGrande.image1g.Picture.LoadFromFile(FormOpc.Table1.Fieldbyname(´foto1´).text);
FormImageGrande.ShowModal;
FormImageGrande.Image1G.Show;
end;

agradeco desde ja qualquer informacao.


Marcelop

Marcelop

Responder

Posts

10/11/2008

Tonidavi2004

// Tentei aqui fazer o que vc quer, foi + ou - o que entendi, mas de qualquer maneira, vc pode tirar como exemplo e implementar.
procedure TFormOpc.DBGrid1DblClick(Sender: TObject);
begin
  if FileExists(FormOpc.Table1.Fieldbyname(´foto1´).text) then //caso esteja no banco o caminho completo
  begin
    FImages.image1.Picture.LoadFromFile(FormOpc.Table1.Fieldbyname(´foto1´).text);
    FormImageGrande.image1g.Picture.LoadFromFile(FormOpc.Table1.Fieldbyname(´foto1´).text);// aqui vc está armazenando a foto grande
  end
  else
  begin
    FImages.Image1.Picture.LoadFromFile(´J:\evolucao_ci\fotos\semfoto.jpg´);
    FormImageGrande.image1g.Picture.LoadFromFile(´J:\evolucao_ci\fotos\semfoto.jpg´);
  end;

  FImages.ShowModal;
end;

procedure TFImages.Image1Click(Sender: TObject);
begin
  FormImageGrande.ShowModal; // vc já armazenou no image1g a foto no evento do grid, bastando dá um Show no form.
end;



Responder

Gostei + 0

10/11/2008

Marcelop

:( quase isto, porem quando clico na image1, vejo a imagem ok, porem quando fecho o formulario da foto grande e clico em outra imagem pra visualiza-la grande ele nao armazena o path da foto.. mostrando outra imagem...

aff tou perdido, preciso entregar isso pro meo irmao o mais urgente possivel...


agradeco imensamente pelo apoio.


Responder

Gostei + 0

10/11/2008

Tonidavi2004

Descreve para mim o que vc quer que o programa faça.
Assim poderei tentar ajudar melhor.
Faça como um caso de uso, ou seja, detalhe passo a passo como se fosse vc o [b:982cf1a375]usuário[/b:982cf1a375].


Responder

Gostei + 0

14/11/2008

Marcelop

Descreve para mim o que vc quer que o programa faça. Assim poderei tentar ajudar melhor. Faça como um caso de uso, ou seja, detalhe passo a passo como se fosse vc o [b:a16ebae05e]usuário[/b:a16ebae05e].


Agradeco imensamente pela ajuda... consegui resolver... fiz da seguinte forma... em vez de usar somente um ImageG1... resolvir colocando 6 ImageG... ocultando e redimencionando a imagem. Achei que era possivel colocando somente uma imagem neste formulario... tamos ai se precisar de algo na area de design... grande abraco.. fica com Deus.


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar