Gogumelo 0 Denunciar post Postado Junho 6, 2010 Fala Galera! To com um problemão aqui. Eu tenho um swf principal, nele eu tenho 3 botoes gerados por XML. E eu tenho um swf externo, que é um "slider" de X produtos, que também carrego de acordo com o XML. Porém eu quuero que quando o usuário clique em um dos botoes do SWF principal, o SWF externo, faça uma animaçao, que eu faço via um eventListener dentro do SWD externo. Os 2 são 2 projetos diferentes. o Principal é feito com animações na Timeline, e o externo é feito pelo Flash Builder, utilizando papervision, logo é tudo via AS, não tenho um arquivo .fla do externo. Alguem sabe alguma solução viável? Desde já obrigado!! Compartilhar este post Link para o post Compartilhar em outros sites
Eder Fortunato 15 Denunciar post Postado Junho 7, 2010 ai dependente de algumas coisas, para disparar um evento bastaria: obj.dispatchEvent(new Event("NOME_DO_EVENTO")); porém depende de alguns detalhes: qual evento você quer chamar nesse swf externo? onde o addEventListener foi adicionado nele? foi na classe principal? diz ai que fica mais facil ajudar []´s Compartilhar este post Link para o post Compartilhar em outros sites
Gogumelo 0 Denunciar post Postado Junho 7, 2010 ai dependente de algumas coisas, para disparar um evento bastaria: obj.dispatchEvent(new Event("NOME_DO_EVENTO")); porém depende de alguns detalhes: qual evento você quer chamar nesse swf externo? onde o addEventListener foi adicionado nele? foi na classe principal? diz ai que fica mais facil ajudar []´s Fala Eder, beleza? Bom, o evento que eu quero chamar é este, stage.addEventListener(KeyboardEvent.KEY_UP, cima); que está no swf externo. Eu quero chamar este evento, que está no swf externo, direto do SWF principal Ajuda essas infos? Abs! Compartilhar este post Link para o post Compartilhar em outros sites
Eder Fortunato 15 Denunciar post Postado Junho 8, 2010 sim ajuda só depois que você carregar ele E adicionar no palco, pode chamar assim: movieExerno.stage.dispatchEvent(new Event(KeyboardEvent.KEY_UP)); com isso ele dispara o evento testa ai []´s Compartilhar este post Link para o post Compartilhar em outros sites
Gogumelo 0 Denunciar post Postado Junho 8, 2010 E ai Eder, beleza? Então cara, eu testei aqui, mas para eu poder dar o objexterno.stage.addEventListener eu tentei converter dando um cast, mas nao rolou fiz loader.load(new URLRequest("paper.swf")); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, funcaoComplete); function funcaoComplete(e:Event):void { trace("carregou"); son = loader.content as MovieClip; trace("son => " + son); trace("loader => " + e.currentTarget.content); //addChild(e.currentTarget.content); addChild(son); } mas minha variavel son vem como nula. Eu to programando isso diretona timeline, você sabe se tem algum problema? Ahh e cheguei a conclusão que vou tentar fazer o swf pai, chamar uma funcao do swf filho. deve ser o mesmo prncipi né, pq se eu conseguir disparar um evento, consigo chamar uma funcao provavelmente Compartilhar este post Link para o post Compartilhar em outros sites
Eder Fortunato 15 Denunciar post Postado Junho 8, 2010 chamar uma função ou disparar o evento direto como mostrei daria na mesma mas é estanho esse trace vindo como null, ele chega a adicionar o swf no palco? os dois traces mostram null? []´s Compartilhar este post Link para o post Compartilhar em outros sites
Gogumelo 0 Denunciar post Postado Junho 8, 2010 chamar uma função ou disparar o evento direto como mostrei daria na mesma mas é estanho esse trace vindo como null, ele chega a adicionar o swf no palco? os dois traces mostram null? []´s entao, o primeiro, que é o "son" da null e se eu tento adicionar ele no palco, ele diz que nao pode, pq é null rs. o segundo, eu consigo, mas nao consigo manipular ele como movieclip. Compartilhar este post Link para o post Compartilhar em outros sites
Gogumelo 0 Denunciar post Postado Junho 9, 2010 Resolvido Galera. Se alguem passar por isto, e o casting não funcionar segue outra forma de se fazer loader.load(new URLRequest("Paper.swf")); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, funcaoComplete); function funcaoComplete(e:Event):void { addChild(loader); obj = e.currentTarget.content; } function click(e:MouseEvent):void { var ret:Boolean = obj.goToObject(e.target.idObjeto); } No Click, ele chama a função goToObject() de outro SWF :) valeu Eder abs Compartilhar este post Link para o post Compartilhar em outros sites