Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Evandro Silva

lista de reprodução com atualização dinamica

Recommended Posts

Caros amigos, estou tentando montar um sistema em flash, que faça a exibição de varios arquivos com tempo de duração diferente, previamente cadastrados em um txt. porém so consegui fazer com que ele atualize em um tempo unico para todos os arquivos, e isso interrompe a exibição de alguns arquivos com tempo maior que o definido no codigo.

 

Tem como fazer pra ele so passar pro proximo filme quando terminar o anterior?

e no final do ultimo filme ele atualize o arquivo txt pra pegar as possiveis alterações?

 

Está um pouco dificil de explicar, mas espero que alguem entenda o q estou querendo.

 

Segue um link com u que ja consegui fazer mudando os filmes de 10 em 10 segundos para todos: http://www.planetava...a/principal.swf

 

o codigo que estou usando é o seguinte:

 

Arquivo teste.txt

 

&texto=img/tv_planeta.swf,img/catavento_topo.swf,img/imagem_03.swf,img/video.swf,img/imagem_02.jpg

 

no flash:

 

stop();
Mouse.hide();
fscommand("fullscreen", "true");
//fscommand("showmenu", "false");
//declaramos variaveis
var tempos = 5000;
var refre:String;
var texto:String;
var tempo:String;
var lista:Array = new Array();
var receber:LoadVars = new LoadVars();
//carrega o dados do php. Coloque o endereço completo do arquivo php ex:
receber.load("teste.txt");
//quando carregado o arquivo, executa a função lerConteudo();
receber.onload = lerConteudo;
_root.createEmptyMovieClip("seu_mc", 1);
_root.seu_mc._x = 0
_root.seu_mc._y = 0
//função responsável por ler conteudo vindo de um php
function lerConteudo($sucesso:Boolean):Void{
    
    //se carregou, faça...
    if($sucesso){
        trace("carregou arquivo php");
        
        // ...cadastramos o conteudo do php para variavel texto
        texto = this.texto;
		tempo = this.tempo;
        
        /* cadastramos o conteudo em um Array,
         * separamos o conteudo desta variavel "texto" pelo método String.split(),
         * utilizamos um separador em comum neste caso virgula (,)
                 * que irá separar cada valor e alimentar um Array */
        lista = texto.split(",");
		tempot = tempo.split(",");
        //retorna conteudo separado, com isso manipulamos com array
       
	   var i = 0;//Variavel i tem o valor 0
//this.pathToPics = "img/"; 
   seu_mc.loadMovie(lista[0]);//Carrega o swf do array slide com o novo valor de i
i++;//Acrecento mais 1 para o valor da variavel i, antes que era 0, agora passa a ter o valor 1
trace(i);
	  
	   }
	function novoSlide(){//Crio uma função chamada novoSlide
 
   seu_mc.loadMovie(lista[i]);//Carrega o swf do array slide com o novo valor de i
   i++;//Após carregado o novo objeto é acrentado 1 ao valor de i
   trace(i);
   // trace(tempot[i]);
   if(i==lista.length){gotoAndPlay("2")//Condiciona se o valor de i chegar a ter o mesmo valor de objetos do array...
      i=0;//...Então o valor de i será 0, e assim recomeça o loop de slide
   }}
  //trace(lista[i]);
  
  objInter = setInterval(novoSlide, 10000);
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom você pode fazer em vez de colocar tempo de execução o código que pergunta se o frame corrente é o ultimo frame.

 

Basta colocar o código

 seu_mc.onEnterFrame = function(){
 if(seu_mc._currentframe = seu_mc._totalframes){
 seu_mc.loadMovie(lista[0]);
 }
 };

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.