Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Prezados,
Achei esta galeria no site do lucas ferreira, é uma galeria simples ao meu ver e funciona exatamente como eu preciso, claro que sem os efeitos, mas isso eu quero incluir depois.
Seguinte, esta galeria funciona na raiz do flash, mas se eu descer um nível ela nao funciona. Para ser mais clara, pois não sei muito bem o linguajar dos Flashmaníacos, seria assim.
Eu quero incluir esta galeria dentro da minha biblioteca que já está toda funcionaal no flash, esta galeria irá carregar dentro de um movieclip, o problema é: quando a insiro no movieclip ele para de funcionar, o que me parece ter algo ligado na hora de chamar os arquivos como imagens em miniatura e etc. Alguém pode me dar uma luz para fazer tudo subir para o palco?
Segue o unico ACTION que há na galeria.
//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");
}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, 10, 2, 175, 106, 1, 1);
//
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);
}Carregando comentários...