lowprofile 0 Denunciar post Postado Fevereiro 18, 2008 Fala pessoal, Desde o dia 19/10/2007 estou tentando fazer uma galeria dinamica de fotos (ver post), estou quase lá, porém não acerto de jeito nenhum a paginação no Flash e também não acho a solução para isso. É o seguinte: Vejam que o numero de paginas vai aumentando na medida em que as fotos sao "upadas". exemplo do album. Eu gostaria de fazer o seguinte: que sempre fosse exibido 10 paginas, um botao anterior, proxima, primeira e ultima. Ficaria assim: primeira | anterior | 1 2 3 4 5 6 7 8 9 10 | proxima | ultima OBS.: O NUMERO DE PAGINAS TEM Q SER ILIMITADO, POIS SEMPRE HAVERA PUBLICAÇAO DE NOVAS FOTOS. Alguem poderia me ajudar?! Abs, http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Compartilhar este post Link para o post Compartilhar em outros sites
SweetDoug 0 Denunciar post Postado Fevereiro 18, 2008 Eu tive um problema um tanto quanto parecido... Acabei desistindo pois o prazo estava estourando e fiz de outra forma :( Sinto não poder ajudar... Mas ficarei atento caso ocorra alguma resposta ^^ Fico na torcida ;) Bom dia. Compartilhar este post Link para o post Compartilhar em outros sites
Eder Fortunato 15 Denunciar post Postado Fevereiro 18, 2008 posta o que você já fez dessa paginação, assim facilita as coisas aqui []´s Compartilhar este post Link para o post Compartilhar em outros sites
lowprofile 0 Denunciar post Postado Fevereiro 18, 2008 Fala Eder, beleza?! Então utilizei a paginação do Maxwell nesse tutorial: Tutorial Maxwell Abs, :thumbsup: Compartilhar este post Link para o post Compartilhar em outros sites
Eder Fortunato 15 Denunciar post Postado Fevereiro 19, 2008 ok você esta se baseando nela, mas o que você já fez da pagina []´s Compartilhar este post Link para o post Compartilhar em outros sites
lowprofile 0 Denunciar post Postado Fevereiro 19, 2008 Fala Eder beleza?! Então, NESSE LINK você vai ver que fiz "igual que nem" o tutorial. Nada diferente em termos de códigos. Caso a paginação seja complicada, se você me disser como faço para saber qual a página atual já me ajuda, pois eu eu parto para um outro sistema de paginação. Veja que deixei um dynamic text que indica o número de páginas do álbum, porém não soube como identificar a página em que o usuário está no momento. Abs, http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Compartilhar este post Link para o post Compartilhar em outros sites
Eder Fortunato 15 Denunciar post Postado Fevereiro 19, 2008 sempre que ele vai mudar de pagina ele chama a função ativar, e passa como parâmetro (se chama num) o numero da pagina que vai ser exibida é só você pegar esse parâmetro de dentro dessa função para saber a pagina atual []´s Compartilhar este post Link para o post Compartilhar em outros sites
lowprofile 0 Denunciar post Postado Fevereiro 19, 2008 Maravilha!!! Chegando em casa vou fazer o teste. Vlw pela ajuda. Mais tarde eu posto aqui. Abs, http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Compartilhar este post Link para o post Compartilhar em outros sites
lowprofile 0 Denunciar post Postado Fevereiro 23, 2008 Então Eder voltei! Será que alguém me ajuda?! Já tentei de tudo que foi jeito, mas não consegui. Pra ser sincero não sou coder, eu me aventuro. O album que estou fazendo é esse aqui Pra eu poder finalizar queria fazer funcionar o sistema de navegação que está do lado direito abaixo dos thumbnails. Assim eu elimino o sistema de paginação entende?! Como o cliente publicará muitas fotos preciso desse sistema nessa forma. O código está assim: CODE import mx.effects.Tween;var i:Number = 0, coluna:Number = 0, linha:Number = 0, len:Number = 0; var dados:Array; var carregar:MovieClipLoader = new MovieClipLoader(); var fotos:XML = new XML(); // var qc:Number = 2; var ql:Number = 6; var qp:Number = 0; var mcs:Array = []; // fotos.ignoreWhite = true; fotos.load("geradoXml.xml"); fotos.onLoad = function() { dados = this.firstChild.childNodes; len = dados.length; url_titulo = dados.attributes.Titulo; url_descricao = dados.attributes.Descricao; url_fotog = "photos/"+dados.attributes.Foto; txt_titulo.text = url_titulo; txt_descricao.text = url_descricao; fotog.mc_loaderG.loadMovie("intro.swf", "POST"); //fotog.mc_loaderG.loadMovie(url_fotog, "POST"); // qp = Math.ceil((len-1)/(qc*ql)); if (qp>1) { criaPaginacao(len); } else { preencher(coluna, linha); } }; // function preencher(coluna:Number, linha:Number):Void { var mc:MovieClip = container.attachMovie("item_mc", "i["+coluna+"]["+linha+"]", container.getNextHighestDepth()); mc._x = Math.round(coluna*mc._width+coluna); mc._y = Math.round(linha*mc._height+linha); mc._xscale = mc._yscale=0; mc.url_fotop = "photos/"+dados.attributes.Foto; mc.url_fotog = "photos/"+dados.attributes.Foto; mc.url_titulo = dados.attributes.Titulo; mc.url_descricao = dados.attributes.Descricao; mc.url_id = dados.attributes.ID; mc.onRollOver = function() { this.play(); }; mc.onRelease = function() { mc_preloaderPic.mc_barra._alpha = 100; carregarFoto(this.url_fotog, fotog.mc_loaderG); txt_titulo.text = mc.url_titulo; txt_descricao.text = mc.url_descricao; }; mc.onTweenUpdate = function(p) { this._xscale = this._yscale=p; }; animate(mc); // mcs.push(mc); } // function animate(mc:MovieClip):Void { mc.tween = new Tween(mc, 0, 100, 250); mc.onTweenEnd = function(p):Void { this.onTweenUpdate(p); carregarFoto(this.url_fotop, this.foto); i++, coluna++; // if (coluna>=qc && linha>=ql) { return; } // if (coluna == qc && linha<ql) { coluna = 0; linha++; } if (i<len) { preencher(coluna, linha); } }; } // function carregarFoto(url:String, target:MovieClip):Void { carregar.loadClip(url, target); } // A função removeAll será responsável por remover todos os movieclips das fotos existentes. // Quando ocorrer a mudança de uma página para a outra function removeAll():Void { // Crie um loop for, para remover os movieclips das fotos da página anterior. for (var i:Number = 0, len = mcs.length; i<len; i++) { // Use o método removeMovieClip para retirar os MovieClips das fotos pequenas mcs.removeMovieClip(); } //Zere o array mcs para gravar as próximas imagens a partir do indice 0 do array; mcs = []; } //A função ativar é responsável por deixar o MovieClip da página que foi clicado desabilitado, e habilitar todos os outros. function ativar(num:Number):Void { atualPage = num+1+" /"; // O loop for abaixo vai servir para definir quais dos MovieClips da paginação vão ficar habilitados, e o que ficará desabilitado. for (var i = 0; i<qp; i++) { if (num != i) { eval("paginacao.p"+i).gotoAndStop(1); eval("paginacao.p"+i).enabled = true; } else { eval("paginacao.p"+i).gotoAndStop(3); eval("paginacao.p"+i).enabled = false; } } } // function criaPaginacao(qtd):Void { var len = qtd; //Agora, vamos fazer o cálculo para ver quantas páginas serão necessárias para a quantidade //de imagens que existem no XML, e atribuir esse valor à variável qp (quantidade de páginas). for (var paginas:Number = 0, total = qp; paginas<total; paginas++) { // Use o método attachMovie para: var pg = paginacao.attachMovie("pag_mc", "p"+paginas, paginacao.getNextHighestDepth()); //Faça o posicionamento dos MovieClips da paginação pg._x = Math.round(paginas*pg._width+paginas); // Aqui faça o cálculo da variável páginas vezes a quantidade de colunas vezes a quantidades de linhas. //Isso vai retornar a partir do ponto do XML em que as fotos devem ser carregadas. pg.idpag = paginas*(qc*ql); // Exiba no campo de texto de cada MovieClip da paginação o número da página. //Observe que usei a variável paginas+1, porque começamos a contar a partir da página 0. pg.n_txt.text = paginas+1; //Defina o evento onRollOver para quando o usuário passar o //mouse em cima de qualquer MovieClip das páginas. O evento envia o MovieClip para o frame 2. pg.onRollOver = function() { this.gotoAndStop(2); }; //A variável atual é definida em cada movieclip durante o loop for. //Atribua a ela o valor da variável páginas. Vamos usar essa variável mais adiante para executar a função ativar. pg.atual = paginas; //No evento de onRollOut e onReleaseOutside dos MovieClips das páginas, mande o MovieClip para o frame 1. pg.onRollOut = pg.onReleaseOutside=function () { //Use o método gotoAndStop, enviando o movieclip para o frame 1. this.gotoAndStop(1); }; // total_imgs = len+" fotos publicadas"; totalPage = total; // pg.onRelease = function() { removeAll(); ativar(this.atual); i = this.idpag; coluna = 0; linha = 0; preencher(coluna, linha); }; } paginacao.p0.onRelease(); } // Agradeço mais uma vez, http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Compartilhar este post Link para o post Compartilhar em outros sites