augcosta777 0 Denunciar post Postado Outubro 6, 2008 Estou com um problema ao tentar carregar via loadmovie um swf q ue contem uma galeria de imagens. O que acontece é que a galeria utiliza um arquivo XML para carregar as imagens. Quando testo a galeria, da tudo certo. Porém quando a carrego dentro do site as imagens não aparecem. Tenho tres arquivos: principal.swf, galeria.swf e fotos.xml. o problema é que a galeria não funciona quando a carrego via loadmovie para dentro do principal.swf Compartilhar este post Link para o post Compartilhar em outros sites
Public2004 79 Denunciar post Postado Outubro 6, 2008 Caso seja AS2, no seu filme "galeria.swf" insira para os objetos o caminho completo, ex: _root.loaderswf.instanceMc1 etc... Abs. Compartilhar este post Link para o post Compartilhar em outros sites
augcosta777 0 Denunciar post Postado Outubro 7, 2008 Caso seja AS2, no seu filme "galeria.swf" insira para os objetos o caminho completo, ex: _root.loaderswf.instanceMc1 etc... Abs. não entendi mto bem.... posso postar or arquivos para você dar uma olhada? Compartilhar este post Link para o post Compartilhar em outros sites
Public2004 79 Denunciar post Postado Outubro 7, 2008 Olá, coloque o cód. do seu filme "galeria.swf". Abs Compartilhar este post Link para o post Compartilhar em outros sites
augcosta777 0 Denunciar post Postado Outubro 7, 2008 o codigo do arquivo galeria.swf: //variaveis da sequencia... var fotos:Array = new Array; //função de inicio do projeto... function init():Void { //carregando xml... var loadDados:XML = new XML(); loadDados.ignoreWhite = true; loadDados.onLoad = function(sucess) { if (sucess) { //primeiro nó: fotos; var f = this.firstChild.childNodes; //listando conteúdo do nó e inserindo no array de fotos for (var i = 0; i<f.length; i++) { var novaimg:Object = new Object(); //criando o objeto de cada foto novaimg.img_p = f[i].attributes.fp; novaimg.img_g = f[i].attributes.fg; fotos.push(novaimg); //inserindo objeto no array } //chamando função q faz a galeria... criaGaleria(); } }; //load no arquivo .xml loadDados.load("fotos.xml"); } //função que cria a galeria function criaGaleria():Void { car._visible = 0; //preloader de imagens grande, usando MovieClipLoader... //fica livre para usar como quiser... var mvlIMG:MovieClipLoader = new MovieClipLoader(); var mvlOBJ:Object = new Object(); mvlOBJ.onLoadStart = function(){ car._visible = 1; } mvlOBJ.onLoadProgress = function(obj, bl, bt){ var p = (Math.round(bl/bt) * 100) //porcentagem carregada da imagem car.p.text = "Carregando... " + p + "%"; } mvlOBJ.onLoadComplete = function(){ car._visible = 0; } mvlIMG.addListener(mvlOBJ); // //criando sistema de galeria(quantidade de fotos, fotos por pagina, colunas, altura miniatura, largura, espacamento x, e y); _global.galeria1 = new Distribute(fotos.length, 8, 2, 80, 60, 4, 3); // var objGal1:Object = new Object(); objGal1.onDistStart = function() { //ação de inicio da distribuição das fotos... //verifica se o mc já está no palco, caso esteja, remove para nova página... if(_root.miniaturas){ //removendo miniaturas anteriores na troca de pagina... _root.miniaturas.removeMovieClip(); } //duplicando o mc conteiner q vai conter as miniaturas, para um novo que poder ser removido... _root.conteinerInicial.duplicateMovieClip("miniaturas", 1); //definindo onde o mcConteiner deve aparecer... miniaturas._x = conteinerInicial._x; // _x miniaturas._y = conteinerInicial._y; // _y //escondendo... miniaturas._visible = 0; }; // objGal1.onDistUpdate = function(info:Object) { //puxando da bliblioteca o mc com linkage miniatura, e ja posicionando de arquivo com o _x e _y passados pelo var info... _root.miniaturas.attachMovie("miniatura", "fp_"+info.iObj, galeria1.nDepth(_root.miniaturas), {_x:info.x, _y:info.y}); //informando ou passando, para miniatura, qual é sua foto grande... _root.miniaturas["fp_"+info.iObj].img_g = fotos[info.index].img_g; //criando o movie clip alvo para receber a img pequena, dentro do mc Conteiner... _root.miniaturas["fp_"+info.iObj].createEmptyMovieClip("img_p", 1); //carregando thumb via loadMovie... _root.miniaturas["fp_"+info.iObj].img_p.loadMovie(fotos[info.index].img_p); //definindo ação de clique na miniatura, para ampliar... _root.miniaturas["fp_"+info.iObj].onRelease = function(){ //usando o obj mvlIMG, para carregar a imagem grande... mvlIMG.loadClip(this.img_g, img_grande); } }; objGal1.onDistEnd = function(info:Object) { //ação de distribuição completa, exibindo mc Conteiner, chamado de miniaturas... miniaturas._visible = 1; }; //definindo ao objeto galeria1, os objetos e eventos que deve utilizar... galeria1.addEventListener("onDistStart", objGal1); galeria1.addEventListener("onDistUpdate", objGal1); galeria1.addEventListener("onDistEnd", objGal1); // //montando paginação, pegase o nº de paginas e faz o paginador... //função responsável pelo click dos bts da paginação... function setPg(obj){ //restaurando todos bts, para o primeiro frame... for (i=0; i<galeria1.nPages; i++) { var mcPgAtual = this._parent["mcPg_" add i]; if(mcPgAtual != this) mcPgAtual.gotoAndStop(1); //todos voltam menos o atual... } //definindo o frame q deve mostrar... this.lastFrame = 3; //mostrando página solicitada... var iAtual:Number = int(this.pg.text); galeria1.showPage(iAtual); } for (i=0; i<galeria1.nPages; i++) { //ataxando ao mc vazio, paginacao, os bts de página... var mcPgAtual = paginacao.attachMovie("mcPg", "mcPg_" add i, i); mcPgAtual._x = (i*(mcPgAtual._width+3)); //posicionando bt no mc... mcPgAtual.pg.text = (i+1); //setando no bt, a pg dele... //definindo eventos e ações paga o bt da página... mcPgAtual.onRollOver = function(){ //pega o frame atual e armazena, caso o bt seja o bt de página clicada... this.lastFrame = this._currentframe; //ao passar porcima acende this.gotoAndStop(2); } mcPgAtual.onRollOut = function(){ this.gotoAndStop(this.lastFrame); } mcPgAtual.onRelease = setPg; } // //mostrando pagina 1 e setando o botão de pg 1... paginacao["mcPg_0"].gotoAndStop(3); galeria1.showPage(1); } // //iniciando por fim, a galeria... init(); Compartilhar este post Link para o post Compartilhar em outros sites
Public2004 79 Denunciar post Postado Outubro 7, 2008 Então, o seu filme "galeria.swf" em separada funciona. Correto? E quando você faz o loadMovie, deixa de funcionar, pense na lógica da coisa: Quando você executa galeria.swf em separado ela é "_root", mas quando você faz o loadMovie, "_root" passa a ser o filme principal - O que fazer para funcionar. Você tem que especificar no cód que os caminhos foram alterados, por ex: No seu filme principal você faz o loadMovie em um mc instanciado como "alvo", então os caminhos do cod. galeria.swf devem apontar para um novo caminho, ex: Onde: _root.conteinerInicial.duplicateMovieClip("miniaturas", 1);Deverá ser: _root.alvo.conteinerInicial.duplicateMovieClip("miniaturas", 1);E para todos os outros caminhos que façam referência à "_root". Espero que tenha entendido. Abs. Compartilhar este post Link para o post Compartilhar em outros sites
augcosta777 0 Denunciar post Postado Outubro 8, 2008 Valew!!!! deu certinho! Obrigado pela explicação! Compartilhar este post Link para o post Compartilhar em outros sites