Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) "Alterar imagem de fundo de uma aplicação Delphi"


valSistemasDelphi

Pergunta

8 respostass a esta questão

Posts Recomendados

  • 0

basta voce colocar o componente TIMage no form

exemplo

abraço

para imagem tipo png voce deve baixar e instalar o componente

https://www.google.com.br/search?q=colocar+png+no+form+delphi&ie=utf-8&oe=utf-8&client=firefox-b&gws_rd=cr&ei=B4iGWP_KGMOGwgSLrKzoDg#q=pngimage+delphi+download

abraço

Link para o comentário
Compartilhar em outros sites

  • 0

Desculpe acho que me expressei mal.. Quero fazer assim, tenho um form com o papel de parede já configurado isso sei fazer!!

o que eu quero realmente fazer, e que quando o usuario clicar duas vezes no papel de parede abra uma tela para escolher outro papel de parede diferente assim salvando no Banco Foto.. Não sei como fazer isso.. Já desenvolvi um código aqui para que quando o usuário clique duas vezes na imagem execute o OpenPictureDialog1, e só!! Se poder me ajudar a respeito disso desde já agradeço!!

Link para o comentário
Compartilhar em outros sites

  • 0

muito bom jonas.. só que a foto está disproporcional a tela.. Exemplo:Captura de Tela (202).png

8 minutos atrás, valSistemasDelphi disse:

muito bom jonas.. só que a foto está disproporcional a tela. E outro detalhe que quando fecho e abro a aplicação a foto não salva... Exemplo:Captura de Tela (202).png

 

Editado por valSistemasDelphi
Link para o comentário
Compartilhar em outros sites

  • 0

para salvar a imagem e recupara-la quando abrir novamente a aplicação, faça assim

procedure TForm1.Image1DblClick(Sender: TObject);
begin
   if OpenPictureDialog1.Execute then
      begin
         Image1.Picture.LoadFromFile(OpenPictureDialog1.FileName);
         Image1.Picture.SaveToFile('c:\imagem.bmp');
      end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
   Image1.Picture.LoadFromFile('c:\imagem.bmp');
end;


para a imagem ficar proporcional a tela, a imagem deve ter o mesmo tamanho da tela, para a propriedade Stretch = false;

se a propriedade Stretch = true, a imagem será esticada para caber dentro da área do TImage.

abraço

Link para o comentário
Compartilhar em outros sites

  • 0

fiz um código aqui salva o caminho da imagem corretamente no banco, so que quando fecho e abro a aplicação não está mais a foto que havia alterado..

os códigos são estes!!

 

// Este código e executado logo quando o usuário for clicar na foto!!

procedure TForm2.Image1DblClick(Sender: TObject);
begin

       if OpenPictureDialog1.Execute then
       begin
       Form2.IBTable1.Insert;;

       Form2.IBTable1IMAGE.Text:=(OpenPictureDialog1.FileName);
      //Image1.Picture.SaveToFile('E:\imagem.bmp');
      //IBTable1.FieldByName('Foto').Value := (OpenPictureDialog1.filename);
      image1.Stretch := false;
       Form2.IBTable1.Post;
      Image1.Picture.LoadFromFile(form2.IBTable1IMAGE.Text);

end;

 

procedure TForm2.FormCreate(Sender: TObject);

begin
{
if form2.ibtable1image.value <>'' then
begin

Image1.Visible:=true;
Image1.Picture.Loadfromfile(Ibtable1image.text);
Form2.IBTable1.Post;
end
else Image1.Visible:=true;

end;

 

Editado por valSistemasDelphi
Link para o comentário
Compartilhar em outros sites

  • 0

procedure TForm2.Image1DblClick(Sender: TObject);
begin

       if OpenPictureDialog1.Execute then
          begin
              Form2.IBTable1.Active := true;

              // Form2.IBTable1.Last;

              // Form2.IBTable1.Insert;

              Form2.IBTable1IMAGE.Value =(OpenPictureDialog1.FileName);

              Image1.Picture.LoadFromFile(OpenPictureDialog1.FileName);

              image1.Stretch := false;

              Form2.IBTable1.Post;

         end;
end;

 

procedure TForm2.FormCreate(Sender: TObject);

begin
     Form2.IBTable1.Active := true;

     if form2.ibtable1image.value <>'' then
        begin

            Image1.Visible:=true;

            Image1.Picture.Loadfromfile(Ibtable1image.value);
        end
     else

        begin

             Image1.Visible:=false;

             showmessage('caminho não encontrado');

        end;

end;

 

OBS: primeiro voce tem que dizer se esta salvando todos os caminhos da foto que voce alterar ( veja que tirei o comando Form2.IBTable1.Insert; )

se voce usar o comando Insert, cada vez que voce selecionar uma foto, o caminho da mesma será gravado na tabela.

nesse caso quando voce abre novamente o Form, será sempre o primeiro caminho da foto que estiver lá na tabela, que será carregado para o componente IMage1

se quiser que seja o caminho da ultima foto, basta voce colocar no Evento OnCreate do Form

procedure TForm2.FormCreate(Sender: TObject);

begin
     Form2.IBTable1.Active := true;

     Form2.IBTable1.Last; //  PEGA O ULTIMO CAMINHO SALVO NA TABELA

     if form2.ibtable1image.value <>'' then
        begin

            Image1.Visible:=true;

            Image1.Picture.Loadfromfile(Ibtable1image.value);
        end
     else

        begin

             Image1.Visible:=false;

             showmessage('caminho não encontrado');

        end;

end;

 

(Sugestão) Pela foto parece ser um sistema de Lanchonete ... se voce quer realmente usar fotos, não coloque as fotos aparecendo no form todo, mas coloque numa janela pequena

abraço

 

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,7k
×
×
  • Criar Novo...