Natan Alves - Flash Developer
RSS

FlashLightBox


FlashLightBox é um Componente que permite que o efeito LightBox presente em algumas páginas HTML possa ser usado em arquivo do Flash usando apenas ActionScript. Esse Componente foi feito para usuários que possuam páginas feita inteiramente no Flash (e ocupando 100% do browser) e para usuários que possuam algum conteúdo do Flash (swf) no site. Se seu site não for 100% feito no Flash, será necessário usar o arquivo JavaScript que faz o efeito original, o Componente só fará a ponte do Flash para esse JavaScript. Os arquivos JavaScript necessários estão no arquivo zip disponibilizado aqui.

Requisitos necessários

Esse Componente foi feito usando o ActionScript 3 e ActionScript 2. Para quem quiser usar a versão em ActionScript 2, os requisitos necessários são:

  • Mínimo FlashPlayer 8
  • Funciona no Flash 8, Flash CS3 3, Flash CS4 e Flash CS5

Quem quer usar a versão em ActionScript 3, os requisitos são:

  • Mínimo FlashPlayer 9
  • Funciona no Flash CS3, Flash CS4 e Flash CS5

FlashLightBoxVideo

Agora é possível exibir vídeos no formato FLV usando o Componente FlashLightBoxVideo. Esse Componente está disponível para usuários do ActionScript 2 e ActionScript 3 e podem ser baixados nos links citados abaixo.

Download Componente

O Componente pode ser baixado em duas versões:

Como usar

Parte 1 – Instalação Componente versão ActionScript 3

Após fazer o download do Componente na versão AS3, copiem os arquivos FlashLightBoxAS3.swc e FlashLightBoxVideoAS3.swc para o diretório onde estão instalados os Componentes do Flash. Para usuários do Flash CS3 o caminho é:

  •  (Windows) C:/Arquivos de Programas/Adobe/Adobe Flash CS3/linguagem/Configuration/Components
  •  (Mac OS X) Macintosh HD/Applications/Adobe Flash CS3/Configuration/Components

Onde linguagem é a linguagem na qual o Flash foi instalado. Para usuários do Flash CS4 e Flash CS5 o caminho é:

  •  (Windows) C:/Arquivos de Programas/Adobe/Adobe Flash versão do flash/Common /Configuration/Components
  •  (Mac OS X) Macintosh HD/Applications/Adobe Flash versão do flash/Configuration/Components

Parte 2 – Instalação Componente versão ActionScript 2

Após fazer o download do Componente na versão AS2, copiem os arquivos FlashLightBoxAS2.swc e FlashLightBoxVideoAS2.swc para o diretório onde foi instalado o Flash. Quem for usar essa versão no Flash CS3, Flash CS4 ou no Flash CS5 o caminho a ser movido o Componente é o mesmo mostrado acima. Quem usa o Flash 8, o caminho é:

  • (Windows) C:/Program Files/Macromedia/Flash 8/linguagem/Configuration/Components
  • (Mac OS X) Macintosh HD/Applications/Macromedia Flash 8/Configuration/Components

Onde linguagem é a linguagem na qual o Flash foi instalado.

Parte 3 – Configurando o Componente

Abram o Flash e criem um novo arquivo. Abram o painel Components (Ctrl+F7) e joguem para o palco o Componente FlashLightBox. Selecionem o Componente e abram o painel Parameters ou Component Inspector, algumas opções do Componente poderão ser alteradas:

Opções de personalização

Atenção: A personalização do Componente só será válida caso use as funções reservadas a um site feito inteiramente no Flash, caso seu site não seja totalmente em Flash e tiver que usar o JavaScript, a personalização terá que ser feita através do arquivo CSS do LightBox.

Parte 4 – Funções do Componente

Como já sabem, o Componente foi feito para quem possui um site feito inteiramente em Flash (e ocupando 100% do browser) e para quem possui algum conteúdo do Flash (swf) na página.

Site feito inteiramente no Flash ocupando 100% do Browser:

  • carrega(arquivo:String, legenda:String, link:String) – função responsável por carregar uma imagem, exibir sua legenda e oferecer opção para abrir um link quando clicar na imagem. Recomendada para usuários que possuem um site feito inteiramente no Flash.
  • carregaMultiplos(arquivos:Array, legendas:Array, links:Array, num:Number) – função responsável por carregar várias imagens (uma de cada vez) habilitando opção de carregar próxima imagem ou carregar anterior. Função recomendada para usuários que possuam um site feito inteiramente no Flash.

Algum conteúdo swf no site:

  • carregaHTML(arquivo:String, legenda:String) – função responsável por carregar uma imagem e exibir sua legenda. Recomendada para os usuários que não tem um site feito inteiramente no Flash. Será necessário usar JavaScript para o efeito.
  • multiploHTML(arquivo:Array, legenda:Array) – função responsável por carregar várias imagens (uma de cada vez) habilitando opção de carregar próxima imagem ou carregar anterior. Função recomendada para usuários que não possuam um site feito inteiramente no Flash. Será necessário usar JavaScript para o efeito.

Parte 5 – Usando o Componente

Após ter jogado o Componente no palco e customizado ele através do painel Parameters ou Component Inspector, é necessário instanciar esse Componente. Selecione o Componente e abra o painel Properties e no campo Instance Name de o nome que desejar, para esse exemplo usarei o nome flb. Criem um botão e dêem nome de instancia de bt. Quem for usar o Componente em um site feito inteiramente no Flash e estiver usando o ActionScript 3, insiram as seguintes ações:

bt.addEventListener(MouseEvent.CLICK, btPress);
function btPress(event:MouseEvent):void {
   flb.carrega("sua imagem.jpg", "seu texto", "seu link");
}

Para quem for usar ActionScript 2, as ações são essas:

bt.onPress = function() {
   flb.carrega("sua imagem.jpg", "seu texto", "seu link");
};

Caso não queira inserir um link na imagem, basta deixar o valor do parametro link vazio que o Componente verifica se existe algum link nele para habilitar essa opção.

Para quem deseja carregar múltiplas imagens e usar ActionScript 3, utilizem as seguintes Ações:

var fotos:Array = ["imagem1.jpg", "imagem2.jpg", "imagem3.jpg"];
var textos:Array = ["texto1", "texto2", "texto3"];
var links:Array = ["link1", "link2", "link3"];
bt.addEventListener(MouseEvent.CLICK, btPress);
function btPress(event:MouseEvent):void {
   flb.carregaMultiplos(fotos, textos, links, 1);
}

Para quem for usar o ActionScript 2, as ações são essas:

var fotos:Array = ["imagem1.jpg", "imagem2.jpg", "imagem3.jpg"];
var textos:Array = ["texto1", "texto2", "texto3"];
var links:Array = ["link1", "link2", "link3"];
bt.onPress = function() {
   flb.carregaMultiplos(fotos, textos, links, 1);
};

Para quem não tem um site inteiramente feito com o Flash e usar o ActionScript 3, insiram as seguintes ações:

bt.addEventListener(MouseEvent.CLICK, btPress);
function btPress(event:MouseEvent):void {
   flb.carregaHTML("sua imagem.jpg", "seu texto");
}

Quem for usar o ActionScript 2, as ações são essas:

bt.onPress = function() {
   flb.carregaHTML("sua imagem.jpg", "seu texto");
};

Para carregar múltiplas imagens usando ActionScript 3 usem as seguintes ações:

bt.addEventListener(MouseEvent.CLICK, btPress);
function btPress(event:MouseEvent):void {
   flb.multiploHTML("sua imagem.jpg", "seu texto");
}

Quem for usar o ActionScript 2, as ações são essas:

bt.onPress = function() {
   flb.multiploHTML("sua imagem.jpg", "seu texto");
};

Além das ações, quem não tem um site feito inteiramente no Flash, é necessário baixar o JavaScript do LigthBox criado por Lokesh Dhakar e um JavaScript que facilita a interação do Flash com o JavaScript criado pelo Lucas Ferreira.

Parte 6 – Carregando Vídeos

Com o Componente FlashLightBoxVideo agora é possível exibir vídeos no formato FLV. Para carregar um vídeo, basta arrastar o Componente para o palco, instancia-lo, escolher qual estilo o player vai ter e usar a função carrega ou carregaMultiplos, o Componente consegue identificar a extensão do arquivo para verificar se o arquivo passado é um vídeo no formato flv ou não.

Seguindo os exemplos anteriores, abram o painel de Componentes e joguem o Componente FlashLightBoxVideo, instanciem ele com o nome de flb, criem um botão com instancia de bt e se estiverem usando ActionScript 3 as ações são essas:

bt.addEventListener(MouseEvent.CLICK, btPress);
function btPress(event:MouseEvent):void {
   flb.carrega("seu video.flv", "seu texto", "");
}

Reparem que no parametro link eu deixei vazio, isso porque não é possível inserir um link no vídeo e deixar o player funcionando, então mesmo que insiram um link o Componente irá ignorar o link passado. Se estiverem usando ActionScript 2 as ações são essas:

bt.onPress = function() {
   flb.carrega("seu video.flv", "seu texto", "");
};

Também é possível carregar vários vídeos e misturar vídeos com imagens. Se estiver usando ActionScript 3 essas são as ações necessárias:

var arquivos:Array = ["imagem1.jpg", "video.flv", "imagem3.jpg"];
var textos:Array = ["texto1", "texto2", "texto3"];
var links:Array = ["link1", "link2", "link3"];
bt.addEventListener(MouseEvent.CLICK, btPress);
function btPress(event:MouseEvent):void {
   flb.carregaMultiplos(arquivos, textos, links, 1);
}

Se estiver usando ActionScript 2 as ações são essas:

var arquivos:Array = ["video.flv", "imagem2.jpg", "imagem3.jpg"];
var textos:Array = ["texto1", "texto2", "texto3"];
var links:Array = ["link1", "link2", "link3"];
bt.onPress = function() {
   flb.carregaMultiplos(arquivos, textos, links, 1);
};

Uma atenção super importante: quem estiver usando o Componente FlashLightBoxVideo na versão para ActionScript 2 precisa ter em seu arquivo na biblioteca o Componente FLVPlayback para que o vídeo possa funcionar, já que não é possível criar o Componente usando apenas ActionScript. Usuários do ActionScript 3 não precisam fazer esse processo para poder usar o Componente.

Verificando quando o Componente terminou

Agora também é possível criar uma função que seja disparada quando o Componente tiver terminado de rodar. Se estiver usando o Componente na versão em ActionScript 3 as ações são essas:

bt.addEventListener(MouseEvent.CLICK, btPress);
flb.addEventListener("fecha", aoFechar);
function btPress(event:MouseEvent):void {
   flb.carrega("sua imagem", "seu texto", "seu link");
}
function aoFechar(event:Event):void {
   trace("FLB Fechou");
}

E se estiver usando na versão em ActionScript 2:

Stage.align = "TL";
var listener:Object = new Object();
flb.addEventListener("fecha", listener);
bt.onPress = function() {
   flb.carrega("sua imagem", "seu texto", "seu link");
};
listener.fecha = function() {
   trace("fechou");
}

Chamando o Componente através do ActionScript

Também é possível criar e personalizar o Componente usando apenas ActionScript. Para fazer isso, você precisam ter o Componente na biblioteca do seu arquivo, se ele não estiver na biblioteca não irá funcionar. Quem for usar ActionScript 3 as ações são essas:

/* Cria instancia da Classe FlashLightBox */
var flb:FlashLightBox = new FlashLightBox();
/* Adiciona ele ao palco */
addChild(flb);
/* Modifica o valor alpha do fundo */
flb.alphaFundo = 60;
/* Modifica cor do fundo */
flb.corFundo = 0xFF0000;
/* Modifica cor da borda */
flb.corBorda = 0xFF00FF;
/* Modifica cor preloader */
flb.corPreloader = 0xFF0000;
/* Modifica tamanho da legenda */
flb.tamanhoLegenda = 10;
/* Modifica a cor da legenda */
flb.corLegenda = 0x000000;
/* Se habilitado, deixa a imagem sempre centralizada */
flb.okResize = true;
/* Modifica a cor das setas */
flb.corSetas = 0xFFFFFF;
/* Se habilitado exibe opção de download da imagem */
flb.liberaDownload = true;
/* Modifica o idioma das mensagens exibidas */
flb.mudaIdioma = "Inglês";
/* Se habilitado, dimenciona imagem caso seja
    maior que a tela */
flb.okResizeImagem = true;
/* Se habilitado exibe porcentagem do carregamento da imagem */
flb.okPorcentagem = true;
/* Se habilitado, o fundo também pode fechar a
    imagem carregada */
flb.okFundo = true;
/* Possibilita modificar o arredondamento da borda */
flb.arredonda = 5;
/* Muda a janela que será usada caso usuário clique na imagem
   para abrir o link passado
*/
flb.mudaJanela = "_blank";
bt.addEventListener(MouseEvent.CLICK, btPress);
function btPress(event:MouseEvent):void {
   flb.carrega("sua imagem.jpg", "seu texto", "link");
}

Quem estiver usando ActionScript 2 as ações são essas:

/* Cria instancia da Classe FlashLightBox */
var flb:FlashLightBox = new FlashLightBox();
/* Modifica o valor alpha do fundo */
flb.alphaFundo = 60;
/* Modifica cor do fundo */
flb.corFundo = 0xFF0000;
/* Modifica cor da borda */
flb.corBorda = 0xFF00FF;
/* Modifica cor preloader */
flb.corPreloader = 0xFF0000;
/* Modifica tamanho da legenda */
flb.tamanhoLegenda = 10;
/* Modifica a cor da legenda */
flb.corLegenda = 0x000000;
/* Se habilitado, deixa a imagem sempre centralizada */
flb.okResize = true;
/* Modifica a cor das setas */
flb.corSetas = 0xFFFFFF;
/* Se habilitado exibe opção de download da imagem */
flb.liberaDownload = true;
/* Modifica o idioma das mensagens exibidas */
flb.mudaIdioma = "Inglês";
/* Se habilitado, dimenciona imagem caso seja
    maior que a tela */
flb.okResizeImagem = true;
/* Se habilitado exibe porcentagem do carregamento da imagem */
flb.okPorcentagem = true;
/* Se habilitado, o fundo também pode fechar a
    imagem carregada */
flb.okFundo = true;
/* Possibilita modificar o arredondamento da borda */
flb.arredonda = 5;
/* Muda a janela que será usada caso usuário clique na imagem
   para abrir o link passado
*/
flb.mudaJanela = "_blank";
bt.onPress = function() {
   flb.carrega("sua imagem.jpg", "seu texto", "link");
};

Se estiver usando o Componente FlashLightBox na versão para ActionScript 3, as ações necessárias são:

/* Cria instancia da Classe FlashLightBox */
var flb:FlashLightBoxVideo = new FlashLightBoxVideo();
/* Adiciona ele ao palco */
addChild(flb);
/* Modifica o valor alpha do fundo */
flb.alphaFundo = 60;
/* Modifica cor do fundo */
flb.corFundo = 0xFF0000;
/* Modifica cor da borda */
flb.corBorda = 0xFF00FF;
/* Modifica cor preloader */
flb.corPreloader = 0xFF0000;
/* Modifica tamanho da legenda */
flb.tamanhoLegenda = 10;
/* Modifica a cor da legenda */
flb.corLegenda = 0x000000;
/* Se habilitado, deixa a imagem sempre centralizada */
flb.okResize = true;
/* Modifica a cor das setas */
flb.corSetas = 0xFFFFFF;
/* Se habilitado exibe opção de download da imagem */
flb.liberaDownload = true;
/* Modifica o idioma das mensagens exibidas */
flb.mudaIdioma = "Inglês";
/* Se habilitado, dimenciona imagem caso seja
    maior que a tela */
flb.okResizeImagem = true;
/* Se habilitado exibe porcentagem do carregamento da imagem */
flb.okPorcentagem = true;
/* Se habilitado, o fundo também pode fechar a
    imagem carregada */
flb.okFundo = true;
/* Possibilita modificar o arredondamento da borda */
flb.arredonda = 5;
/* Muda a janela que será usada caso usuário clique na imagem
   para abrir o link passado
*/
flb.mudaJanela = "_blank";
/* Seleciona Skin do Componente FLVPlayback */
flb.setSkin = "url skin.swf";
/* Escolhe cor para o Componente FLVPlayback */
flb.skinBackgroundColor = 0x47ABCB;
/* Modifica alpha do Componente FLVPlayback */
flb.skinBackgroundAlpha = 0.85;
bt.addEventListener(MouseEvent.CLICK, btPress);
function btPress(event:MouseEvent):void {
   flb.carrega("sua imagem.jpg", "seu texto", "link");
}

E se estiver usando o Componente na versão em ActionScript 2.

/* Cria instancia da Classe FlashLightBox */
var flb:FlashLightBox = new FlashLightBox();
/* Modifica o valor alpha do fundo */
flb.alphaFundo = 60;
/* Modifica cor do fundo */
flb.corFundo = 0xFF0000;
/* Modifica cor da borda */
flb.corBorda = 0xFF00FF;
/* Modifica cor preloader */
flb.corPreloader = 0xFF0000;
/* Modifica tamanho da legenda */
flb.tamanhoLegenda = 10;
/* Modifica a cor da legenda */
flb.corLegenda = 0x000000;
/* Se habilitado, deixa a imagem sempre centralizada */
flb.okResize = true;
/* Modifica a cor das setas */
flb.corSetas = 0xFFFFFF;
/* Se habilitado exibe opção de download da imagem */
flb.liberaDownload = true;
/* Modifica o idioma das mensagens exibidas */
flb.mudaIdioma = "Inglês";
/* Se habilitado, dimenciona imagem caso seja
    maior que a tela */
flb.okResizeImagem = true;
/* Se habilitado exibe porcentagem do carregamento da imagem */
flb.okPorcentagem = true;
/* Se habilitado, o fundo também pode fechar a
    imagem carregada */
flb.okFundo = true;
/* Possibilita modificar o arredondamento da borda */
flb.arredonda = 5;
/* Muda a janela que será usada caso usuário clique na imagem
   para abrir o link passado
*/
flb.mudaJanela = "_blank";
flb.mudaJanela = "_blank";
/* Seleciona Skin do Componente FLVPlayback */
flb.setSkin = "url skin.swf";
/* Escolhe cor para o Componente FLVPlayback */
flb.skinBackgroundColor = 0x47ABCB;
/* Modifica alpha do Componente FLVPlayback */
flb.skinBackgroundAlpha = 0.85;
bt.onPress = function() {
   flb.carrega("sua imagem.jpg", "seu texto", "link");
};

Recomendações

Só usem o Componente FlashLightBoxVideo se for querer exibir algum vídeo, porque o Componente usa o Componente FLVPlayback que acaba adicionando um peso extra ao arquivo final. O peso não é muito significativo, mas dependendo do tamanho de seu arquivo atual pode significar alguns segundos a mais na hora de carregar seu arquivo para o usuário.

Exemplos

Imagens individuais 

Somente Flash

Componente e JavaScript

Imagens múltiplas

Somente Flash

Componente e JavaScript

Abandono da versão em ActionScript 2

Decidi não continuar a versão do Componente em ActionScript 2 porque está se tornando cada vez mais complicado conseguir acompanhar as novidades usando o ActionScript 2 que está muito defasado comparado ao ActionScript 3. Portanto se desejam usar as novidades passem a programar usando ActionScript 3 que é uma linguagem muito mais completa e mais fácil comparado ao ActionScript 2. Só farei correções de possíveis bugs no Componente, novas opções só estarão disponíveis na versão em ActionScript 3.

Suporte

Caso tenham algum problema, entrem em contato através de meu site ou através do Blog.

Doações

Caso queiram, agradeceria muito a doação de qualquer valor. A doação pode ser feita através do PagSeguro. A doação não é obrigatória para o uso do Componente. Obrigado

Compartilhe:

Comentários

  1. Olá Natan, estou tantando usar o componente, mas encontrei uma dificuldade, no modo simples, carregando 1 foto ele funciona legal, mas no modo multiplas fotos, usando Array, ele mostra a primeira, quando clica na seta pra ir pra próxima, diz que a imagem não existe, se eu clico na senda abre normal, se clico na seta pra ir para a terceira, dá o erro de novo, já verifiquei se estou errando em algo, comparei com o exemplo aqui do site e está tudo normal, eu uso AS3 e CS4

    Desde já agradeço a atenção
    Um abraço!

    Luis Carlos
    05/08/2009

    • Pra ficar mais fácil, me manda um E-mail com seu arquivo para que eu possa ver o que pode estar errado.

      natan @ natanalves.com (retire os espaços em branco)

      []s

      Natan Alves
      05/08/2009

  2. Olá Natan, me diga uma coisa, é possível mostrar conteúdo HTML com o FLB?
    Preciso abrir um lightbox mostrando o conteúdo do Google Maps, pra sites em HTML eu tenho o LightBox normal, mas o site que preciso colocar é 100% flash.

    Desde já agradeço a atenção

    Att
    Luis Carlos

    Luis Carlos
    27/08/2009

    • Olá.
      O que você pode fazer é usar o Google Maps para o Flash (fiz um tutorial a respeito) em um arquivo swf separado e usar o Componente pra carregar esse swf no lugar de carregar uma imagem.

      []s

      Natan Alves
      30/08/2009

  3. Hi, I took your code about flashlightbox AS3, very nice.
    Can you tell me if it is possible to fixed this effect only on one part of the screen. (when ever we have a page 2000px height, the effect is in the middle of the page and the lightbox is often down the screen we can can see. we need also to used the scroll to see it) can we have the lightbox effect only on the 100% of wide but fixed to 500px ( for ex.) on the height centered on the pics we want to enlarge?????
    thanks a lot for your answer??

    king regards

    philippe

    philippe (france)
    07/09/2009

    • It´s very simple to solve it, you can use fire works to resize your images.

      Deivis
      05/12/2009

  4. Olá Natan, muito bom o tutorial e o componente, tenho uma dúvida como deixar 100% na tela? no html coloquei da seguinte forma:

    AC_FL_RunContent(‘codebase’, ‘http://download.macromedia.com/pub/shockwave/
    cabs/flash/swflash.cab#version=9,0,0,0’,
    ‘width’, ‘100%’,
    ‘height’, ‘100%’,

    deu certo, só que carrega o botão em tamanho ampliado também, depois de clicar sobre ele, volta ao tamanho original….gostaria que entrasse com 100% W e H sem alterar o tamanho original do botão…NO aguardo e muito Obrigado..

    Ubiracy Nóbrega
    25/09/2009

    • Olá, adicione esse parametro a seu arquivo:

      ‘scale’, ‘noscale’

      No arquivo ZIP que tem de exemplo existe um outro JS que coloca o seu swf no HTML de forma mais simples, qualquer coisa tente usar ele.

      []s

      Natan Alves
      27/09/2009

  5. Olá Natan tem como carregar vídeo do Youtube neste componente? abraços..

    Ubiracy Nóbrega
    25/09/2009

    • Olá. Isso é uma coisa que eu não testei. Teoricamente funciona, pois você estará carregando o Player do YouTube em seu arquivo no lugar de uma imagem. Arquivos swf também devem funcionar.

      []s

      Natan Alves
      27/09/2009

  6. Obrigado Natan…..deu certo o parametro ’scale’, ‘noscale’…Parabéns…

    Ubiracy Nóbrega
    30/09/2009

  7. Oláq Natan, tentei colocar um vídeo do Youtube, não estou conseguindo fazer a conexão do Flash com Youtube, estou colocando assim:

    bt.onPress = function() {
    flb.carrega(“http://www.youtube.com/watch?v=BZo6KjqRkX4”, “seu texto”);
    }; tem alghuma sugestão……abraços e no aguardo…..

    Ubiracy Nóbrega
    03/10/2009

    • O certo é assim:

      bt.onPress = function() {
      flb.carrega(“http://www.youtube.com/v/BZo6KjqRkX4”, “seu texto”);
      };

      Só que a borda que é gerada não corresponde ao tamanho certo do player, provavelmente terei que mudar alguma coisa no Componente para conseguir carregar e exibir corretamente os vídeos do YouTube, quando eu tiver um tempo livre verei se consigo fazer isso.

      []s

      Natan Alves
      10/10/2009

  8. Fala Natan

    Assim que abro a imagem ja no lightbox o site vai la pro canto da tela oque deve ser isso?
    obrigadão cara

    Lucas Morato
    12/10/2009

    • Olá.

      Me passar o link do seu arquivo publicado para que eu possa ver o erro e entende-lo melhor.

      []s

      Natan Alves
      13/10/2009

      • fala natan! mandei no seu email abraço!!

        Lucas Morato
        13/10/2009

      • Fala Natan… Sobre esse caso do Lucas Morato (quanto ao deslocamento do conteúdo à esquerda), você conseguiu descobrir o que era? Tenho um problema semelhante que tá me deixando grilado! rs

        Abração!
        E parabéns! Bom trabalho!

        Matheus Barros
        26/05/2010

      • Olá Matheus.
        Experimente desativar a opção Resize Habilitado e veja se funciona corretamente. Se não funcionar adicione esse ActionScript a suas ações:

        AS3
        stage.align = StageAlign.TOP_LEFT;

        AS2
        Stage.align = “TL”;

        []s

        Natan Alves
        04/06/2010

  9. Olá Natan, tudo bem, preciso de uma ajudinha, estou tentando abrir a imagem de um xml, mas na hora de mostrar dá erro por causa das [“”] pois chamo de uma variavel, oque sugere, valew!

    Rodrigo Saraiva
    15/10/2009

    • Olá Rodrigo.

      Se precisa mandar o texto vindo de um XML não é preciso usar as aspas, desde que a variável que você estiver usando esteja recebendo um texto (string). Estou terminando de escrever um tutorial no MXStudio de uma galeria que usa esse Componente e usa XML também, espero conseguir publicar até o final da semana.

      []s

      Natan Alves
      18/10/2009

      • Olá Natan, obrigado, parabens muito bom!

        Rodrigo Saraiva
        19/10/2009

  10. Ola Natan, duas duvidas
    o meu AS 2 ta dando esses erros
    Statement must appear within on handler var fotos:Array = [“fe e nathan.jpg”, “timão.jpg”];
    Statement must appear within on handler var fotos:Array = [“pai e filho” ,”texto2″];
    Statement must appear within on handler bt.onRelease= function() {

    e gostaria de saber tbm, se ele se limita só em imagens, ou é possivel carregar um outro swf por exemplo, obrigado e parabens

    ;D

    Felipe Vaz
    17/10/2009

  11. ahhh o problema do AS 2 eu ja resolvi, soh fica a outra duvida, eu tentei carrega mais nao deu muito certo :S

    Felipe Vaz
    18/10/2009

    • Olá Felipe.

      É possível sim carregar arquivos swf, só pode acontecer do Componente não criar a borda com o tamanho certo do swf externo, isso acontece porque o Flash ao carregar outro swf ignora o fundo do arquivo diminuindo o tamanho dele (como se o Flash removersse o stage mantendo apenas os objetos). Para que o swf seja carregado exibindo o tamanho correto, você precisa criar um MovieClip do mesmo tamanho do seu palco e com a mesma cor, assim quando carregar o swf o tamanho dele será respeitado.

      []s

      Natan Alves
      18/10/2009

      • Olá Natan, obrigado pela dica, eu consegui fazer mesmo sem criar o MovieClip, mais é melhor nao arriscar né. Nesse caso eu poderia entao, ao inves de ter um fundo e o MC, poderia deixar esse MC como meu fundo, ou daria algum conflito??

        []s

        Felipe Vaz
        19/10/2009

      • Desde que esse MC tenha o tamanho que deseja não deve gerar conflito, faça alguns testes e veja o que acontece.

        []s

        Natan Alves
        19/10/2009

      • Bom dia Natan,
        cara, to com um pequeno problema, se puder me ajudar eu agradeço
        seguinte
        tenho em um frame, quatro botoes de instancias: dia, julho, agosto e setembro.
        pra cada botao eu adicionei um componente FLB com as respectivas instancias: flb_dia, flb_julho, flb_agosto e flb_setembro, segue minha action

        var fotos:Array = ["1dia/dia1.jpg", "1dia/dia2.jpg", "1dia/dia3.jpg", "1dia/dia4.jpg", "1dia/dia5.jpg",];
        var textos:Array = ["dia1", "dia2"];
        dia.onPress = function() {
        flb_dia.carregaMultiplos(fotos,textos,1);
        }

        var fotos:Array = ["julho/j1.jpg", "julho/j2.jpg", "julho/j3.jpg", "julho/j4.jpg", "julho/j5.jpg"];
        var textos:Array = ["Julho"];
        julho.onPress = function() {
        flb_julho.carregaMultiplos(fotos,textos,2)
        }

        var fotos:Array = ["agosto/a1.jpg", "agosto/a2.jpg", "agosto/a3.jpg", "agosto/a4.jpg", "agosto/a5.jpg",];
        var textos:Array = ["Agosto"];
        agosto.onPress = function() {
        flb_agosto.carregaMultiplos(fotos,textos,3);
        }

        var fotos:Array = ["setembro/s1.jpg", "setembro/s2.jpg", "setembro/s3.jpg", "setembro/s4.jpg", "setembro/s5.jpg",];
        var textos:Array = ["Setembro"];
        setembro.onPress = function() {
        flb_setembro.carregaMultiplos(fotos,textos,4)
        }

        o que acontece é que as fotos, abrem todas bagunçadas, nao abre na ordem que deveria
        segue o site pra preview que eu postei
        http://www.nathanmdv.com.br/teste/index

        ps: só pra consta, nao sao só essas fotos, pasta 1dia 14, julho 58, agosto 28 e setembro 42 fotos respectivamente.

        se puder me ajudar agradeço.

        Felipe Vaz
        21/10/2009

      • po Natan, desculpa o flood ae cara, mais ja consegui resolve o problema, coloquei os botoes dentro de MC’s, dai deu certo, desculpa hien :S

        Felipe Vaz
        25/10/2009

  12. E aí natan belezinha?
    Sou desenvolvedor flash e estava pensando em utilizar seu componente pois já fiz uma galeria de imagens para um projeto. Como tenho que agilizar o processo do desenvolvimento do site estou procurando uma forma de mostrar as imagen. Só que como estou fazendo o site parcialmente (cerca de 80%) com classes eu queria saber se vc pode disponibilizar as classes do Componente (ou apenas tb me descrever como instancio pela classe) para que eu possa instanciar e manipulá-lo diretamente no arquivo AS.
    Grato de sua ajuda, eu agradeço!!!

    • Olá Henrique.

      É possível sim chamar o Componente através do ActionScript, mas é preciso que no seu arquivo principal ou onde estará chamando o Componente, o Componente esteja na biblioteca. Para criar e modificar seus parametros você usa as seguintes ações:

      ActionScript 3

      var flb:FlashLightBox = new FlashLightBox();
      addChild(flb);
      flb.alphaFundo = 60;
      flb.corFundo = 0xFF0000;
      flb.corBorda = 0xFF00FF;
      flb.corPreloader = 0xFF0000;
      flb.tamanhoLegenda = 10;
      flb.corLegenda = 0x000000;
      flb.okResize = true;
      flb.corSetas = 0xFFFFFF;
      flb.liberaDownload = true;

      ActionScript 2

      var flb:FlashLightBox = new FlashLightBox();
      flb.alphaFundo = 60;
      flb.corFundo = 0xFF0000;
      flb.corBorda = 0xFF00FF;
      flb.corPreloader = 0xFF0000;
      flb.tamanhoLegenda = 10;
      flb.corLegenda = 0x000000;
      flb.okResize = true;
      flb.corSetas = 0xFFFFFF;
      flb.liberaDownload = true;

      Você precisa atualizar a versão do Componente pois a versão antiga não era possível fazer isso. Basta fazer o download do ZIP, mover o arquivo swc para o local mostrado e no seu arquivo remover o Componente e joga-lo novamente já com a versão mais nova.

      []s

      Natan Alves
      07/11/2009

  13. E aí, Natan.
    Eu uso o Flash 8 e AS2 e os problemas persistem…

    Pra quem não tem um site totalmente em Flash e vai usar o AS2 (meu caso):
    “Quem for usar o ActionScript 2, as ações são essas:

    bt.onPress = function() {
    flb.carregaHTML(“sua imagem.jpg”, “seu texto”);
    };”

    Resultado:
    “**Error** Scene=Scene 1, layer=Layer 1, frame=1:Line 1: Statement must appear within on handler
    bt.onPress = function() {

    Total ActionScript Errors: 1 Reported Errors: 1”

    Só funciona dessa maneira:
    “on(press) {
    flb.carregaHTML(“sua imagem.jpg”, “seu texto”);
    }”

    E no final das contas, não funciona. O arquivo *.fla do zip que você colocou aqui dá erro: “unexpected file format” (sim, eu baixei a versão pra AS2).

    fabinhokriok
    09/11/2009

    • As ações precisam ser colocadas no frame que o Componente e seus botões estão, não podem estar no botão. Os arquivos de exemplo foram salvos para o Flash CS3, pois eu não tenho como salvar numa versão anterior.

      []s

      Natan Alves
      09/11/2009

  14. Olá, Natan, primeiramente parabens pela iniciativa e tambem pelo execelente conhecimento, bem testei o light box e apresenta o seguinte erro:

    Error #2044: securityError: não manipulado. text=Error #2048: Violação da área de segurança: http://localhost:8080/site/paginas/fotos/fotos.swf não pode carregar dados de http://www.natanalves.com/flashlightbox/versao.txt.
    at FlashLightBox/getVersao()
    at FlashLightBox()
    at flash.display::MovieClip/gotoAndPlay()
    at fotos_fla::MainTimeline/Carregando()

    isto no i.e 8

    teria o componente sem esta função de atualização para disponibilizar? por favor comunique no email se for possivel para que não gere mais este erro pois o componente realmente é muito util e incrivel.

    Obrigado

    Romer
    15/11/2009

    • Olá Romer.

      Problema corrigido, esqueci que esse tipo de problema poderia acontecer, baixe novamente o Componente que essa mensagem não irá aparecer mais.

      []s

      Natan Alves
      27/11/2009

  15. Tudo bem Natan, eu estou usando o componete que voce disponibilizou do Flash LightBox com o AS2, e observei que quando eu executo ele dentro do Flash (Ctrl+Enter), ele funciona numa boa, mas quando eu rodo o filme SWF no computador na pasta onde ele tá armazenado, ocorre uma advertência dizendo que o SWF está tentando acessar a internet para o endereço http://www.natanalves.com

    Porque isso tá ocorrendo, tem como eu tirar isso, ou isso irá aparecer ao publicar minha página?
    Grato

    Fábio Pedro
    26/11/2009

    • Olá Fábio.

      Acontece que e o Componente está tentando recuperar através do meu site qual a versão do Componente, por isso ele não roda localmente. Além desse problema foi relatado também sobre uma outra mensagem de erro, por causa disso eu removi essa parte do Componente, faça o download novamente que tudo voltara a funcionar corretamente.

      []s

      Natan Alves
      27/11/2009

      • Valeu Natan, obrigado pela atenção, eu ainda não testei e não baixei o release do componete, mas assim que eu estiver com ele no meu pc testarei.

        Caso ocorra algo errado eu te aviso.

        Fica com Deus e Sucesso.

        Fabio Pedro
        29/11/2009

  16. Ein… Imgs eu consegui carregar mas swfs não… o quadro naum abre no tamanho do swf… ???

    bt.addEventListener(MouseEvent.CLICK, aparece);
    function aparece(MouseEvent){
    flb.carrega(“error.swf”,”Erro”);
    }

    Eduardo Garcia
    28/11/2009

    • Olá Eduardo.
      Acontece que ao carregar um swf, o Flash acaba ignorando o tamanho original do palco do swf carregado. Vamos supor que o seu swf externo tem o tamanho de 200x200px, nele você desenhou um quadrado de tamanho 10×10, ao carregar esse swf o Flash irá ver o tamanho do swf como 10×10 e não 100×100. Para corrigir isso, você pode desenhar uma borda no palco do seu swf que ocupe o tamanho do stage, você pode deixar a borda com um alpha em 0%, fazendo isso ao carregar esse swf você irá conseguir pegar o tamanho certo de seu swf.

      []s

      Natan Alves
      28/11/2009

  17. Ola natan quando eu xamo ele swf externo nao vai, quando eu abro ele via html funfa legal e quando so abro ele pelo swf tbm nao acontece nada como eu xamo ele pra abrir em cima de uma externo?

    Reinaldo
    02/12/2009

    • Olá Reinaldo, não entendi seu problema, pode explicar melhor.

      []s

      Natan Alves
      07/12/2009

  18. Beleza natan,
    cara muito obrigado por esse tutorial, o meu problema é que quando o filme começa e seleciono alguma imagem tudo vai numa boa, mas quando eu a fecho tudo congela, nenhuma imagem ou menu funciona. Se tiver rolando no filme alguma animação essa continua rolando e mais nada.

    willian paulo
    02/12/2009

  19. Natan consegui resolver foi só colocar a versão flash play 9.
    mas agora estou com outro problema é que quando eu seleciono alguma imagem o código fscommand(“allowscale”, “true”); fscommand(“showmenu”, “false”); é desabilitado. Como fasso para q isso não aconteça?

    willian paulo
    03/12/2009

    • Olá Willian.

      Acontece que o Componente por padrão já vem habilitado a função de resize, onde o modo allowscale não é habilitado. Se quiser usar ele você terá que desabilitar a função resize do componente, basta selecionar ele, abrir o painel Parameters e escolhe false na opção Resize Habilitado.

      []s

      Natan Alves
      07/12/2009

  20. beleza cara consegui, tem algum geito tambem para abilitar um textarea, pos tudo funciona menos o formulario, não consigo gigitar nele, nem seleciona o text area.

    willian paulo
    08/12/2009

  21. Oi amigos!

    No início testei o LightBox com sucesso para o que ele propunha como básico:

    Entrar em tela cheia, semi-transparente, com um box automaticamente adaptado ao tamanho de um arquivo de IMAGEM, sua legenda (opcional), botões de navegar e fechar (com opção de clicar FORA do box = fechar).

    DEPOIS DAI… eu pensei:

    Só faltam 2 coisas para este LightBox fazer — (1) Carregar um SWF; (2) Carregar um HTML.

    Tendo ambas as possibilidades, estaríamos com FORTE PODER de conteúdo.

    E CONSEGUI,… “de boa”.

    Notei que usando XML, HTML e Java, chaveando os TIPOS de conteúdos que o aparato permite, caso a caso, FUNCIONAVA tudo direitinho.

    (Até Powepoint, que tem a sua vertente HTML, pôde ser aproveitado — naquelas suas bases e limitações).

    ASSIM, não achei necessário acoplar o componente ao ambiente de desenvolvimento Flash, a menos que fosse misturar LightBox e outros componentes.

    Monta-se uns botões ou menus para comandar as coisas, sendo clicadas ou ao passar o mouse — e PRONTO.

    Para quem não o fez, ainda, analise os JS que você vai entender. Dentro do HTML você comanda e define o tipo (como falei antes). Só isso.

    Admiro o esforço de todos aqui em ajudar em TUDO o que for possível e também a coragem de muitos em pedir socorro.

    Abraços,

    ARTUR
    ______________________________________________________________
    Designer 2D, 3D & 4D + Diretor de Arte & Desenvolvimento Web.

    [eom]

    Artur Sá Menezes
    17/12/2009

  22. Olá Natan

    Parabens pelo tutorial, funciona muito bem!
    Porém, estou montado uma galeria dinamica em flash que usa xml. Já tentei de tudo e nao consigo fazer carregar as informações do xml… É porque realmente nao tem jeito de usar dinamicamente ou eu estou fazendo algo errado? Segue abaixo o AS. Caso precise posso enviar os arquivos para analisar melhor.
    Desde já agradeço!

    Stage.scaleMode = “noScale”;

    var filename = new Array();
    var url = new Array();
    var urlt:Array = new Array();
    var title = new Array();
    var description = new Array();
    var filepath:String = “portfolio/anuncios/”;

    var album_xml = new XML();
    album_xml.ignoreWhite = true;
    album_xml.onLoad = function()
    {
    var nodes:Array = this.firstChild.childNodes;
    for(var i=0;i<nodes.length;i++)
    {
    filename.push(nodes[i].attributes.filename);
    url.push(nodes[i].attributes.url);
    url_target.push(nodes[i].attributes.target);
    title.push(nodes[i].attributes.title);
    description.push(nodes[i].attributes.description);
    }
    };

    var fotos:Array = [filename.push(nodes[i].attributes.filename)];
    var textos:Array = [title.push(nodes[i].attributes.title)];
    tn_button.onPress = function() {
    flb.carregaMultiplos(fotos, textos, 1);
    };
    album_xml.load("portfolio/anuncios/albumlist.xml");

    Dorival Junior
    07/01/2010

    • Olá Dorival.

      O problema das suas ações está aqui:

      var fotos:Array = [filename.push(nodes[i].attributes.filename)];
      var textos:Array = [title.push(nodes[i].attributes.title)];

      Repare que você está criando dois Arrays, e esses Arrays que deveriam pegar informações de outros Arrays não estão pegando pois você está usando o método push, que insere informações num Array. Então o Array fotos que deveria reveber os dados do Array filename estão recebendo dados errados, pois você está usando o push. Veja se trocando essas linhas por essas passa a funcionar:

      var fotos:Array = filename;
      var textos:Array = title;

      Uma outra opção é não usar esses Arrays fotos e textos, e usar os que você já criou.

      flb.carregaMultiplos(filename, title, 1);

      Se visitar a parte de tutoriais, vai ver que meu último tutorial foi uma Galeria de Imagens que usa XML usando o Componente. Qualquer dúvida me avisa.

      []s

      Natan Alves
      11/01/2010

  23. Oi Natan tudo bem? Estou usando o componete que voce disponibilizou do Flash LightBox com o AS3, mas quando eu rodo o filme SWF no computador na pasta onde ele tá armazenado, ocorre uma advertência dizendo que o SWF está tentando acessar a internet para o endereço http://www.natanalves.com. Ele não roda local executando o swf? Baixei a versão AS3 e vi que o Fábio teve o mesmo problema com a versão AS2. Poderia me ajudar com a versão AS3? Obrigada.

    Marcela
    09/01/2010

    • Olá Marcela.

      Realmente, esse é um problema que deria estar arrumado, mas por alguma confusão da minha parte acabei não enviando os arquivos corretos. Já arrumei os arquivos para download, faça o download deles, remova a versão anteior que esteja usando tanto da sua máquina quanto do seu arquivo, e instale essa última versão que irá funcionar corretamente.

      []s

      Natan Alves
      11/01/2010

      • Perfeito Natan!!! Funcionou!!! Muito obrigada!!!! =)

        Marcela
        15/01/2010

  24. Hello, first, i want to thank you for your job “flashlightbox” because it’s the great application for me ! I used it recently, it works, no problem but i’d like to know if it can be possible to change the language from the bottom window (Fechar) to english caption (close) ?

    thanks u so much for your answer.

    Regards

    Frahir.

    Frahir
    11/01/2010

    • Hello.

      I just updated the component by adding an option to choose language, there are three options, Portuguese (standard), English and Spanish. Download and install the new version, in your file remove the Component from the stage and library and add the Component again. Hope enjoy.

      []s

      Natan Alves
      15/01/2010

  25. ei natan, eu acompanhei seu tutorial certinho, até executei testes com o seu exemplo, no entando, creio eu q a forma d salvar o arquivo , ou seja, exporta-lo quando esta pronto nao está correta, pois continua aparecendo o icone do componente, e para tirar essa duvida salvei o seu arquivo exemplo novamente e aconteceu o mesmo problema
    se puder ajudar agradeço
    obrigado!

    André Miranda
    20/01/2010

    • Olá.

      Qual versão está dando esse problema (AS2 ou AS3)? Você baixou a versão mais atualizada do Componente?

      []s

      Natan Alves
      23/01/2010

  26. Olá Natan,
    Estou com o mesmo problema do 8. Lucas Morato, gostaria de saber o que foi feito para resolver aquele problema.

    Obrigado

    Lucas
    21/01/2010

    • Olá.

      Está acontecendo esse erro provavelmente porque seu HTML está alinhando o swf no centro da tela, quando o certo é que o próprio swf se alinhe no centro da tela.

      O que você pode fazer para arrumar esse problema é mudar seu swf para que ele se alinhe no centro da tela ou desativar a opção ‘Resize Habilitado’ do Componente.

      []s

      Natan Alves
      23/01/2010

  27. Intendi, tentei apenas desabilitar o resize mas não adiantou, como posso centralizar pelo Flash para que sempre fique do tamanho de acordo com a resolução do usuário ?

    obrigado

    Lucas
    24/01/2010

    • Olá.
      Você precisa usar a função onResize (se estiver usando ActionScript 2) ou o evento RESIZE (se estiver usando ActionScript 3). Outra coisa, seu swf precisa ficar alinhado como TOP LEFT. De uma procurada por essa função ou por esse evento no Google que você vai encontrar diversos assuntos sobre eles.

      []s

      Natan Alves
      07/02/2010

  28. Olá Natan,

    Antes de mais nada, parabéns pelo excelente trabalho! Este componente com certeza salva horas de trabalho de muitos designers e programadores.

    Tenho uma dúvida, quanto ao texto de descrição da foto.

    Como posso chamar um load no texto de descrição de um arquivo html ou xml (com quebra de linhas e a formatação leve de sempre), posicionando o texto em outro lugar ao invés de abaixo da foto? É possível?

    Um abraço,

    Renato

    Renato
    26/01/2010

    • Olá.
      A quebra de linha na descrição ocorre de forma automatica quando seu texto é muito grande, mas se quer uma quebra de linha em um ponto específico você pode usar um \n para que o Flash quebre a linha nesse ponto.
      O posicionamento do campo de texto não é possível mudar, pois ele existem ações que posicionam ele que não podem ser acessadas.

      []s

      Natan Alves
      07/02/2010

  29. Olá natan!
    Para quem não tem um site inteiramente feito com o Flash, tentei utilizar a função onde o flb acessa carregaHTML, nao funcionou, entao usei a função q vc postou para quem tem o site inteiro em flash;

    bt.addEventListener(MouseEvent.CLICK, btPress);
    function btPress(event:MouseEvent):void {
    flb.carrega(“sua imagem.jpg”, “seu texto”);
    }

    Eu adicionei os JS conforme vc indicou e FUNCIONOU! Porém no FireFox depois q fecho a imagem ampliada fica na html uma borda pontilhada….entao fica feio…pq qnto mais imagens eu clicar mais bordas “grudam no fundo”…tem como resolver esse problema?

    Eu uso AS3

    Valeuh tutorial muito bom!

    wweb
    30/01/2010

    • Olá.
      Me manda seus arquivos para que eu possa ver o que tem de errado, pois no exemplo que eu deixei não ocorre esse problema.

      []s

      Natan Alves
      07/02/2010

  30. Olá Natan parabéns ai pelo tuto.

    Estou com o seguinte problema, a página que estou incluindo essa galeria esta com Resize automatico, só que qdo eu dou o double click na imagem, e vem o lightbox, a página não permanece na posição que ela se encontrava, o arquivo vai para o TOP_LEFT, qdo eu desabilito o alinha mento do LightBox fica correto só que o LightBox não fica centralizado como se era de imaginar.
    Vc tem uma solução para este problema, já tentei de diversas formas, olhei no google, tentei incluir resize em todos os arquivo, mas… sem sucesso infelizmente.

    Bem espero não estar sendo incoveniente.

    Desde já obrigado.

    Francisco
    01/02/2010

    • Olá novamente Natan, bem consegui resolver meu problema.
      Na verdade era só um erro matematico onde consta: mc.x = Math.round(Math.random()*(stage.stageWidth-mc.width));

      Eu alterei o stage.stageWidth, para um valor fixo, um pouco maior que o valor do meu stage, desta forma quando ocorre o maximizar as imagens contuam centralizada, mesmo em um resolução muito maior, já que o alinhamento padrão esta TOP_LEFT, bem não sei se consegui explicar hehe, mas funcionou como eu queria.

      De qualquer forma mto obrigado.

      Francisco
      02/02/2010

  31. Antes mais Parabéns Natan pelo excelente trabalho !!!! mto bom …

    Francisco também estou com esse problema… onde você alterou esse código ?!

    thks

    José
    12/02/2010

  32. Oi pessoal.. eu também estou com o mesmo problema e já alterei esse código e não está funcionando … eu estou com a pagina com autorezise exactfit e qdo clicko na imagem ela muda de lugar .. se tiro o resize do component funciona bem mas a imagem perde qualidade fica meio pixelizada…

    Obrigado desde já…

    Limpo
    12/02/2010

    • Olá Limpo.

      O seu problema é que você fez com que seu swf ficasse com o exactfill, ou seja, o swf fica do tamanho da tela do usuário. Só que provavelmente seu swf tem um tamanho original menor que a tela do usuário, então ao aumentar o tamanho do swf você acaba perdendo qualidade. O certo é deixar o swf ocupando 100% da tela do navegador mas sem dimencionar. Além disso, o posicionamento do swf tem que ser top-left. Fazendo isso, ao usar o Componente ele não ficará com a imagem ruim nem mudará a posição do seu swf principal.

      []s

      Natan Alves
      27/02/2010

  33. Olá Natan primeiro gostaria de parabenizar você por está iniciativa , após MUITO tempo procurando um lightbox que fique do jeito que quero achei o seu, mas estou com um problema estou desevolvendo meu portifolio e estou tomando como base o estilo de carregar fotos deste template http://www.flashmo.com/preview/flashmo_202_motion_gallery mas não consigo de forma alguma encaixar o flashlightbox nele teria como você me dar uma ajudinha , ou então uma explicação onde eu carrego o lighbox no xml , emuqe parte do codigo…
    eu vi o seu tuto de xml mas eu queria uma galeria fixa e que se forme em colunas , se tiver como me ajudar eu agradeço … desde de já muito obrigado !

    Vinicius Ledesma
    03/03/2010

    • Olá Vinicius.

      Fiz um tutorial um tempo atrás mostrando como usar o Componente juntamente com XML. Dá uma olhada no meu portfolio que você encontra.

      []s

      Natan Alves
      30/03/2010

  34. onde eu posso fazer do download da interação do Flash com o JavaScript criado pelo Lucas Ferreira.

    pois meu site não é inteiro em flash.

    Obrigado e meus parabéns, esse Flashlightbox foi e será muito útil.
    Com certeza você receberá uma doação do meu Pagseguro.

    Aguardo sua resposta!

    Henrique Flores
    04/03/2010

    • Olá Henrique.

      O JavaScript usado pelo Lucas Ferreira vem junto no arquivo ZIP do componente, dentro da pasta js tem o arquivo lightbox.flash.js.

      []s

      Natan Alves
      30/03/2010

  35. natan parabens pelo seu belissimo site em primeiro lugar
    preciso muito de sua ajuda pois isei seu tutorial para fazer um lightbox em flash,
    bom consegui mas esta dando um erro de alinha,ento quando eu clico na imagem e abre o thumb o fundo vai para o lado esquerdo no topo ou seja o meu site em flash vai todo para o lado esquerdo e no topo
    aonde e em que arquivo coloco para ficar no centro ?
    o light box quando entra com os botoes esta tudo certinho o problema e quando vou clicar nas fotos para ampliar se precisar te mando os arquivos ?
    aproveitando vc teria o mesmo light box para videos de youtube ?

    obrigado desde ja
    e parabens serei um forte propagandista deste seu site
    vlw robson

    robson vidal
    30/03/2010

  36. Olá Natan, estou tendo o mesmo problema de algumas pessoas aqui, o lightbox funciona direitinho, mais quando abre, alinha o meu swf no canto da tela..(era pra ficar no centro)..ja tentei tudo que você explicou aqui e não consegui!

    alguma segustão?

    desde já agradeço!

    Thiago
    31/03/2010

  37. Boa Tarde Natan!

    Não sei se o seu componente FlashLightBox tem essa propriedade, mas notei que o preloader das imagens não apresenta a porcentagem(%), ele só movimenta uma barra de progresso que nesse caso voce pode mudar a cor.

    Será que para efeito de melhor informação visual e estética, voce poderia implementar no seu código: “a porcentengem(%)” e por uma opção de “Cor Fonte do Preloader”; Para que esta possa ter um contraste com a cor do Preloader.

    Fica ai minha dica para ajudar a melhorar esse componente tão “mão na roda”, que é o FlashLightBox.

    Fabio Pedro
    09/04/2010

    • Olá Fábio.
      Já estou implementando essa funcionalidade ao Componente, na próxima atualização estará disponível.

      []s

      Natan Alves
      21/04/2010

  38. Natan, Bom Dia,

    Estou com dificuldades para criar galerias diferentes no mesmo palco, por exemplo:

    Tenho imagens no diretorio \galeria\cozinha\imagem1.jpg e
    Tenho imagens no diretorio \galeria\dormitorio\imagem1.jpg.

    eu criei os botoes e instanciei diferentementes ( bt_bozinhas e bt_dormitorios ) e modifiquei o código conforme as instancias.

    O problema é que na hora que rodo o flash ele puxa o primeiro codigo que estiver na sequencia da layer.

    Pode me ajudar ?

    Abcs.

    Luciano

    Luciano Baeza
    17/04/2010

    • Olá Luciano.
      Não sei o que pode estar errado pois não vi seus arquivos, então me mande um E-mail com seus arquivos que eu dou uma olhada o que pode estar errado.
      E-mail: natan arroba natanalves.com
      []s

      Natan Alves
      21/04/2010

  39. Bom dia Natan!
    Parabéns pelo seu ótimo trabalho, bom, estou com uma dificuldade, estou fazendo uma galeria com múltiplas imagens, só que não estou conseguindo minha AS tah assim:

    “var fotos:Array = [“Felipe Calendario 2010 13×18.jpg”, “Calendario personalizado.jpg”];
    var textos:Array = [“texto1”, “texto2″];
    img.onPress = function() {
    flb.carregaMultiplos(fotos, textos, 1);
    };”

    Só que ele só abre a lightbox através da primeira imagem. no caso a “Felipe Calendario 2010 13×18.jpg” respectiva img.

    O que devo fazer para ele poder abrir a lightbox através de imagens aleatórias?
    Obrigado.

    Felipe
    24/04/2010

    • Conseguir… hahaha!!!
      Obrigado!
      Mais tem outra coisinha…
      tem como por para que quando eu de um clic fora da imagem a lightbox se feixe?

      Felipe
      25/04/2010

      • Olá Felipe.
        Isso já está sendo implementado ao Componente e será lançado quando conseguir terminar de implementar outras funcionalidades.

        []s

        Natan Alves
        25/04/2010

  40. Eu gostaria de saber se existe alguma maneira de detectar o fecho do lightbox…

    qq coisa do tipo flb.addEventListener(onclose, function);

    não sei se me estou a fazer entender…

    Continue com o bom trabalho Natan

    []

    Limpo
    28/04/2010

    • Olá.
      Não existe um método que seja disparado quando o usuário fecha o lightbox, mas porque você gostaria ter algo tipo?

      []s

      Natan Alves
      02/05/2010

      • esse método interessava-me pq eu tou com uma galeria que se move conforme o movimento do rato e quando o utilizador clicka numa foto ela abre o FLB mas depois ao movimentar o rato para fechar o FLB o scroll da galeria movimenta-se… daí que eu consigo desactivar o scroll da galeria ao clickar na foto mas depois ao fechar o FLB queria activá-lo de volta ….

        Limpo
        04/05/2010

      • Se você estiver usando ActionScript 3 você pode remover o evento que é disparado conforme o mouse se movimenta, você retornaria com o evento quando o usuário clicasse com o mouse. Se estiver usando ActionScript 2 você segue a mesma lógica.

        []s

        Natan Alves
        07/05/2010

      • Já tinha pensado nisso… mas e como diferenciar o click do fechar e do seguinte/anterior…

        []

        Limpo
        07/05/2010

      • Olá.
        Consegui desenvolver um evento que pode ser disparado usando addEventListener ao fechar da imagem. Ele estará disponível na próxima atualização do Componente que deve sair até o final do mês.
        []s

        Natan Alves
        04/06/2010

  41. Natan, estou tendo o mesmo problema que muitos com o fato do site se deslocar para esquerda. Mas não consehui encontrar a solução em meio a tantos posts.
    Teria como vocë explicar mais detalhadamente o que fazer para resolver isso?
    Agradeço a força e parabéns pelo tutorial.

    Gustavo Uemura
    12/05/2010

    • Olá Gustavo.
      Experimente desativar a opção Resize Habilitado e veja se funciona corretamente. Se não funcionar adicione esse ActionScript a suas ações:

      AS3
      stage.align = StageAlign.TOP_LEFT;

      AS2
      Stage.align = “TL”;

      []s

      Natan Alves
      04/06/2010

  42. Ola Natan

    Parabens pelo Know How..rsrsrs

    Na verdade, gostaria de tirar 2 dúvidas:

    1 – no meu site existe a tela projetos (e nessa tela tem 3 links que devem abrir os jobs) cada uma teria que abrir um lightbox… mas não consegui fazer um pra cada, pois ele abre o primeiro código escrito sempre… então que fiz.. criei um unico flb com todas as imagens e textos… e criei 3 bt (um começa na foto 1, o outro começa da foto 21 e o outro começa da foto 31..ok) mas se eu clicar em qualquer um dos links (bt) ele roda todas as iamgens.. enquanto eu estiver clicando ele vai indo… então aqui vai a dúvida: gostaria de saber se é possível eu estipular no comando que o bt1 vai da foto 1 até 20… o bt2 vai da foto 21 ate 30..etc.. entendeu?

    2 – Consigo configurar por exemplo: canto arredondado da borda branca, tipo de seta, mudar a cor da seta enquanto mouse passa e sai, e deixar aqueles dados na legenda (1,2,3,4,5) e muda a cor do numero da foto que está presente?

    muito obrigado desde já

    Guilherme

    Guilherme
    04/06/2010

    • Olá Guilherme.
      Vamos as respostas:

      1- Pelo que eu entendi você quer usar o Componente para mostrar seus projetos, e cada projeto contém três imagens diferentes. A solução é criar para cada projeto um Array com as imagens e legendas, não precisa usar mais de um Componente no palco. Ai quando clicar em determinado botão você passa o Array correspondente a ele.

      2- Por enquanto não existe uma opção de criar cantos arredondados a borda, você também não pode alterar a forma das setas porque elas não são imagens (são criadas dinamicamente via ActionScript) assim como as cores quando o mouse passa por cima (posso ver o que consigo fazer para futuras atualizações). Não entendi a parte que diz dados na legenda, você quer adicionar uma numeração ao texto nas legendas?

      []s

      Natan Alves
      04/06/2010

  43. Ola Natan.. Obrigado pela resposata rápida…

    Eu tentei fazer o que vc disse.. criar 3 array, mas ele só lê a última das array, indiferente de qual botão eu clico ele abre a mesma.. veja abaixo como estou colocando o código:

    (lembrando que são 3 botoes – cada botão abre um lightbox com uma série de imagens)

    var fotos:Array = [“qb1.jpg”, “qb2.jpg”, “qb3.jpg”, “qb4.jpg”, “qb5.jpg”, “qb6.jpg”, “qb7.jpg”];
    var textos:Array = [“Quintas da Baronesa”, “Quintas da Baronesa”, “Quintas da Baronesa”, “Quintas da Baronesa”, “Quintas da Baronesa”, “Quintas da Baronesa”, “Quintas da Baronesa”];
    bt4.onPress = function() {
    flb.carregaMultiplos(fotos, textos, 1);
    };
    var fotos:Array = [“tb1.jpg”, “tb2.jpg”, “tb3.jpg”, “tb4.jpg”, “tb5.jpg”, “tb6.jpg”, “tb7.jpg”];
    var textos:Array = [“Tamboré I”, “Tamboré I”, “Tamboré I”, “Tamboré I”, “Tamboré I”, “Tamboré I”, “Tamboré I”];
    bt5.onPress = function() {
    flb.carregaMultiplos(fotos, textos, 1);
    };
    var fotos:Array = [“tc1.jpg”, “tc2.jpg”, “tc3.jpg”, “tc4.jpg”, “tc5.jpg”, “tc6.jpg”, “tc7.jpg”];
    var textos:Array = [“Tamboré Casas”, “Tamboré Casas”, “Tamboré Casas”, “Tamboré Casas”, “Tamboré Casas”, “Tamboré Casas”, “Tamboré Casas”];
    bt6.onPress = function() {
    flb.carregaMultiplos(fotos, textos, 1);
    };

    grato
    guilherme

    Guilherme
    05/06/2010

    • Olá Guilherme.
      Acontece que você está usando variáveis de mesmo nome, por isso em qualquer botão ao ser clicado chamará a última variável que ‘pasosu’ por cima das outras as informações. De nomes diferentes a todos os Arrays que vai funcionar corretamente.

      []s

      Natan Alves
      05/06/2010

  44. Valeu Natan

    mas ainda não funciona… só se eu estou renomeando no local errado..poderia me mostrar baseado no codigo que te mandei acima?

    guilherme

    Guilherme
    06/06/2010

    • Veja se assim vai:
      var fotos1:Array = [“qb1.jpg”, “qb2.jpg”, “qb3.jpg”, “qb4.jpg”, “qb5.jpg”, “qb6.jpg”, “qb7.jpg”];
      var textos1:Array = [“Quintas da Baronesa”, “Quintas da Baronesa”, “Quintas da Baronesa”, “Quintas da Baronesa”, “Quintas da Baronesa”, “Quintas da Baronesa”, “Quintas da Baronesa”];
      bt4.onPress = function() {
      flb.carregaMultiplos(fotos1, textos1, 1);
      };
      var fotos2:Array = [“tb1.jpg”, “tb2.jpg”, “tb3.jpg”, “tb4.jpg”, “tb5.jpg”, “tb6.jpg”, “tb7.jpg”];
      var textos2:Array = [“Tamboré I”, “Tamboré I”, “Tamboré I”, “Tamboré I”, “Tamboré I”, “Tamboré I”, “Tamboré I”];
      bt5.onPress = function() {
      flb.carregaMultiplos(fotos2, textos2, 1);
      };
      var fotos3:Array = [“tc1.jpg”, “tc2.jpg”, “tc3.jpg”, “tc4.jpg”, “tc5.jpg”, “tc6.jpg”, “tc7.jpg”];
      var textos3:Array = [“Tamboré Casas”, “Tamboré Casas”, “Tamboré Casas”, “Tamboré Casas”, “Tamboré Casas”, “Tamboré Casas”, “Tamboré Casas”];
      bt6.onPress = function() {
      flb.carregaMultiplos(fotos3, textos3, 1);
      };
      Se não funcionar me mande um E-mail com seus arquivos para que eu possa ver o que pode estar errado. E-mail: natan[arroba]natanalves.com

      []s

      Natan Alves
      06/06/2010

  45. Ola Natan

    Cara..vc foi meu salvador agora…rsrsrsrs vou passar uma parte da grana pra sua conta ok? rsrsrsrs

    Valeu.. agora deu certo… ja sei onde eu errei… não estava colocando dentro do carregamultiplos o nome certo das variaveis

    muitissimo obrigado!!!!!

    Guilherme
    06/06/2010

  46. Natan.. muito obeigado pelas dicas valiosissimas… posso perguntar uma última coisinha?

    Nas legendas do lightbox, se eu quiser mudar a cor da fonte e o tipo de fonte, eu mudo pelo arquivo lightbox.css dentro da pasta css?

    grato

    Guilherme
    06/06/2010

    • Você só consegue alterar a cor e o tamanho da legenda, a fonte não porque cada usuário tem fontes diferentes que outros usuários não tem. Você muda o tamanho e a cor selecionando o Componente e abrindo o painel Component Parameters ou no painel Properties.

      []s

      Natan Alves
      07/06/2010

  47. 1 2 3

Comentar





XHTML: Você pode usar as seguintes tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>