GARANTIR DESCONTO

Fórum Colocar imagem *.jpeg no fundo do formulário principal #338648

13/03/2007

0

Tenho procurado pela internet um exemplo de como fazer para colocar uma imagem jpeg no fundo de meu formulário principal, mas não encontrei da forma que preciso. Gostaria de selecionar algumas imagens e colocar numa pasta e daí fazer com que toda que inicie o sistema ele carrege essas imagens para o formulário principal de forma alternada. Por favor alguém poderia me ajudar a fazer isso, pois estou iniciando no Delphi e não consegui fazer.


Vandeir

Vandeir

Responder

Posts

13/03/2007

Paullsoftware

Eu lembro que no portal da ClubeDelphi tem uma dica de como fazer isso... mais aqui vai uma de como colocar um bmp

https://www.devmedia.com.br/articles/viewcomp.asp?comp=1873


Responder

Gostei + 0

14/03/2007

Vandeir

Obrigado pela dica amigo, mas colocar apenas uma imagem de fundo eu consegui, o que eu queria era colocar várias e o sistema fizesse a rotatividade das imagens toda vez que for iniciar.

Eu vi um sistema que têm essa função. O caminho das imagens são gravados num campo tipo blob e as imagens fica numa pasta no disco. Agora o que eu não dou conta é de fazer é o codigo para pegar esse caminho do campo blob e jogar essa imagem no componete Timage.


Responder

Gostei + 0

14/03/2007

Marco Salles

Gostaria de selecionar algumas imagens e colocar numa pasta e daí fazer com que toda que inicie o sistema ele carrege essas imagens para o formulário principal de forma alternada. Por favor alguém poderia me ajudar a fazer isso, pois estou iniciando no Delphi e não consegui fazer.


function TForm1.RetornarCaminhoValido(Folder,Filter:String): String; var sr: TSearchRec; i: Integer; MeusJpegs:TstringList; begin MeusJpegs:=TstringList.Create; if FindFirst (Folder + Filter, faAnyFile, sr) = 0 then repeat MeusJpegs.Add(Folder + sr.Name) until FindNext(sr) <> 0; FindClose(sr); randomize; result:=MeusJpegs.Strings[random((MeusJpegs.Count)-1)]; MeusJpegs.Free; end;


procedure TForm1.FormCreate(Sender: TObject); var Arquivo:String; begin Arquivo:=RetornarCaminhoValido(´C:\CaminhoValido\´,´*.Jpg´); image1.Picture.LoadFromFile(Arquivo); end;


P:S :arrow: Deixe seu Image1;Picture no Projeto sem nada carregado

P:s :arrow: Deixe a propreidade Stretch do Image1 em True

Boa sorte


Responder

Gostei + 0

15/03/2007

Vandeir

Amigo Marcos Salles, funcionou perfeitamente, ficou muito bom mesmo. Agora eu queria tirar só mais uma dúvida com vc. Será que no código onde informamos o caminho que está a pasta com as imagens teria como pedir pra ele pegar o caminho num arquivo ini, porque daí se eu colocar o sistema em rede posso colocar apenas uma pasta de imagens no servidor e informar o caminho no arquivo ini.

Grato,

Vandeir


Responder

Gostei + 0

15/03/2007

Marco Salles

Será que no código onde informamos o caminho que está a pasta com as imagens teria como pedir pra ele pegar o caminho num arquivo ini,


Acredito que fica ate mais fácil... Mais tarde vou ver se post algo

Boa sorte


Responder

Gostei + 0

15/03/2007

Marco Salles

Fiz o seguinte

Tenho o Arquivo Ini co a secção inicializada em :

[b:2dffd758b0][Caminho][/b:2dffd758b0] 0=C:\TurmaDelphi\Cadastro\Fotos\Inverno2006\HPIM0275.JPG 1=C:\TurmaDelphi\Cadastro\Fotos\Inverno2006\HPIM0276.JPG 2=C:\TurmaDelphi\Cadastro\Fotos\Inverno2006\HPIM0277.JPG 3=C:\TurmaDelphi\Cadastro\Fotos\Inverno2006\HPIM0278.JPG 4=C:\TurmaDelphi\Cadastro\Fotos\Inverno2006\HPIM0279.JPG 5=C:\TurmaDelphi\Cadastro\Fotos\Inverno2006\HPIM0280.JPG 6=C:\TurmaDelphi\Cadastro\Fotos\Inverno2006\HPIM0281.JPG 7=C:\TurmaDelphi\Cadastro\Fotos\Inverno2006\HPIM0282.JPG


Agora para ler eu faço assim:

var caminho:String; Config:TIniFile; begin Config:=TIniFile.Create(´endereçoDo Arquivo Ini/NomeArquivo.Ini´); caminho:=´´; randomize; while caminho = ´´ do begin //Restrição i:=random(6); //[b:2dffd758b0]tenho que a priori saber a Quantidade de Imagens[/b:2dffd758b0] caminho:=Config.ReadString(´caminho´,inttostr(i),´´); end; config.Free; Image1.Picture.LoadFromFile(caminho); end;


Com eu disse , parece ser mais tranquilo:

[b:2dffd758b0]P:S Eu não tive tempo de procurar , mais deve existir algo que retorne
a quantidade de elementos de Uma secção... Uma espécie de [b]Count[/b:2dffd758b0]

De Posse disso podemos tirar a [b:2dffd758b0]restrição[/b:2dffd758b0][/b]


Responder

Gostei + 0

16/03/2007

Vandeir

Arquivo:=RetornarCaminhoValido(´C:\CaminhoValido\´,´*.Jpg´);
image1.Picture.LoadFromFile(Arquivo);


Então Marco das duas formas funcionou muito bem, porém no primeiro exemplo pra colocar em rede deve se colocar uma pasta imagem em cada estação. A segunda pode se colocar apenas uma pasta no servidor, mas fica muito díficil pq o usuário têm que configurar manualmente o arquivo ini com o caminho de cada imagem.

Vou continuar tentando e pesquisando para ver se consigo acha alguma coisa que possa me ajudar a fazer com que eu informe no arquivo ini somento o caminho (´C:\CaminhoValido\´,´*.Jpg´), daí o sistema le esse caminho no arquivo e possa carregar as imagens a partir dele.

Mas os dois exemplos ficaram muito bom e funcionaram 100¬. Grato pela ajuda.

Vandeir


Responder

Gostei + 0

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

Aceitar