Colocar imagem *.jpeg no fundo do formulário principal
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
Curtidas 0
Respostas
Paullsoftware
13/03/2007
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
https://www.devmedia.com.br/articles/viewcomp.asp?comp=1873
GOSTEI 0
Vandeir
13/03/2007
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.
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.
GOSTEI 0
Marco Salles
13/03/2007
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
GOSTEI 0
Vandeir
13/03/2007
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
Grato,
Vandeir
GOSTEI 0
Marco Salles
13/03/2007
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
GOSTEI 0
Marco Salles
13/03/2007
Fiz o seguinte
Tenho o Arquivo Ini co a secção inicializada em :
Agora para ler eu faço assim:
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]
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]
GOSTEI 0
Vandeir
13/03/2007
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
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
GOSTEI 0