Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Galera,
salve salve.
Não sou programador flash, mas quando preciso quebro um galho http://forum.imasters.com.br/public/style_emoticons/default/grin.gif
Foi o que aconteceu esta semana, precisei criar um "sistema" onde ao entrar no site, o flash carregue aleatoriamente uma das 16 imagens que estão na pasta "xx"
Depois de xx tempos, ele muda a imagem com uma transição.
bom.
Tudo funcionou muito bem e meu arquivo .swf ficou com 7kb
mas quando eu fui testar no meu servidor de hospedagem, observei que as imagens demoram um pouco para aparecer, ou seja, ele está carregando a imagem e só depois aparece.. mas como eu não havia preparado o projeto para isso, ele ficou com fundo branco, atraza a transição.. enfim.. não ficou muito legal.
Eu dei uma pesquisada mas não consegui encontrar... precisava fazer o flash carregar a imagem em questão e só depois exibir, e na hora de fazer a transição, só fazer a transição depois que a imagem estiver carregada.
Meu projeto está da seguinte forma:
um movieclip em branco com a instancia: mc_back;
e um movieclip com a instancia: animacao onde dentro deste movie clip exite outro movie clip chamado mc_foto e algumas animações que fazem a transição.
No 1 Frame do palco principal tenho o seguinte:
CODE
stop();
_global.imagem = "";
numero = int(Math.random()*15);
numero = numero + 1;
if(_global.imagem == ""){
_global.imagem = "fotos_topo/faixa" + numero + ".jpg";
}
mc_back.onEnterFrame = function(){
mc_back.loadMovie(_global.imagem);
}
function Inicia(){
play();
clearInterval(inicial);
}
inicial = setInterval(Inicia, 10000);
bom.. depois disso no frame 3 eu tenho um STOP(); e o MovieClip animacao.
Dentro do movieclip animacao tenho apenas um frame com o seguinte código:
CODE
stop();
totalBytes = 0;
function montaImagem(){
numero = int(Math.random()*15);
numero = numero + 1;
loadMovie("fotos_topo/faixa" + numero + ".jpg",mc_fotos); //carrega no MovieClip mc_fotos a imagem gerada aleatóriamente
}
mc_fotos.onEnterFrame = montaImagem;
function montaSegunda(){
montaImagem();
_root.animacao.mask_animacao.play(); //da play na transição
_root.animacao.mask_animacao2.play(); //play na transição
clearInterval(intervalo);
}
function setMontagem(){
_root.mc_back.loadMovie("fotos_topo/faixa" + numero + ".jpg", mc_back); //carrega uma imagem no mc_back
intervalo = setInterval(montaSegunda,2000);
}
setInterval(setMontagem,20000);
Bom.. basicamente eu queria que. ele só executasse a transição depois de o arquivo estar carregado.
Acho que ta meio confuso, mas tentem entender, se não conseguirem pergunte que ajudo!!
http://forum.imasters.com.br/public/style_emoticons/default/clap.gif
Valeu
Carregando comentários...