Pitta 0 Denunciar post Postado Janeiro 6, 2010 Olá galera fmz? Então estou com um problema, antes quando eu criava algum site em AS2 deixava cada página do site como SWF externo, e os SWF's que tinham algum botão ou algo do tipo não funcionavam, e para que isso funcionasse eu utilizava o seguinte código: this._lockroot = true; Ai tudo funcionava muito bem, uma beleza... Agora vem o problema: estou fazendo um site em AS3 e está com o mesmo problema onde as ações e/ou os botões dos SWF's externos não funcionam, mas eu não posso utilizar o mesmo código que eu usava em AS2: this._lockroot = true;. Bom eu gostaria de saber o que, que substituiu esse código em AS3, pois estou precisando muito disso... Desde já agradeço a todos, abraços e fiquem com DEUs...(",)(,")... Compartilhar este post Link para o post Compartilhar em outros sites
Eder Fortunato 15 Denunciar post Postado Janeiro 6, 2010 o swf principal, que carrega os outros é feito em AS2?? pois se for, caso ele carregue um swf em AS3, ele não vai funcionar mesmo se não for esse o caso, poste os codigo que você esta usando nos botões []´s Compartilhar este post Link para o post Compartilhar em outros sites
Elektra 102 Denunciar post Postado Janeiro 7, 2010 Tenho a mesma dúvida que você, com todos os arquivos em AS3. Na página principal tenho botões que carregam arquivos externos. A questão é que os arquivos externos também possuem botões. No meu caso além de não funcionarem, ainda deformam o tamanho, mesmo quando o arquivo externo possui exatamente o mesmo tamanho do container onde é carregado. Tenho na página principal botões com rollover, cada um carrega uma galeria externa que possui botões next/prev. PS: não uso Array, já tentei adicionar o código dos arquivos externos na timeline principal, e adicionar "StageScaleMode.NO_SCALE". Além disso, meu conhecimento ainda não alcança. Uso este código nos botões para rolagem, e também para o carregamento do arquivo externo em exibição inicial. btn_desce.addEventListener(MouseEvent.ROLL_OVER, desce); btn_desce.addEventListener(MouseEvent.ROLL_OUT, desceRemove); function desce(evento:MouseEvent):void{ mc_quadrado.addEventListener(Event.ENTER_FRAME, desceFull); } function desceFull(evento:Event):void{ mc_quadrado.nextFrame(); } function desceRemove(evento:MouseEvent):void{ mc_quadrado.removeEventListener(Event.ENTER_FRAME, desceFull); } btn_sobe.addEventListener(MouseEvent.ROLL_OVER, sobe); btn_sobe.addEventListener(MouseEvent.ROLL_OUT, sobeRemove); function sobe(evento:MouseEvent):void{ mc_quadrado.addEventListener(Event.ENTER_FRAME, sobeFull); } function sobeFull(evento:Event):void{ mc_quadrado.prevFrame(); } function sobeRemove(evento:MouseEvent):void{ mc_quadrado.removeEventListener(Event.ENTER_FRAME, sobeFull); } var carregar:Loader=new Loader(); mc_exibe.addChild(carregar); carregar.load(new URLRequest("anima_1.swf")); mc_quadrado.anima.th_1.addEventListener(MouseEvent.CLICK, botao1); function botao1(evento:MouseEvent):void{ carregar.load(new URLRequest("anima_1.swf")); } A galeria externa usa: stop(); dir_btn.addEventListener(MouseEvent.CLICK, proximo); esq_btn.addEventListener(MouseEvent.CLICK, anterior); function proximo(me:MouseEvent):void { stage.addEventListener(Event.ENTER_FRAME, onFramesNext); } function anterior(me:MouseEvent):void { stage.addEventListener(Event.ENTER_FRAME, onFramesPrev); } function onFramesNext(e:Event):void { nextFrame(); if(currentFrame == 20) { stage.removeEventListener(Event.ENTER_FRAME, onFramesNext); } if(currentFrame == 40) { stage.removeEventListener(Event.ENTER_FRAME, onFramesNext); } if(currentFrame == 60) { stage.removeEventListener(Event.ENTER_FRAME, onFramesNext); } } function onFramesPrev(e:Event):void { prevFrame(); if(currentFrame == 40) { stage.removeEventListener(Event.ENTER_FRAME, onFramesPrev); } if(currentFrame == 20) { stage.removeEventListener(Event.ENTER_FRAME, onFramesPrev); } if(currentFrame == 1) { stage.removeEventListener(Event.ENTER_FRAME, onFramesPrev); } } PS: Eder, se você gostar, lhe mando de presente todos os meus CDs, Dual Disc e até um DVD da Dave Matthews Band (Central Park Concert). Também tenho um DVD do Peter Gabriel que é tudo de bom (Still Growing Up). Tô vendendo a minha alma pelo AS3, rsrsrs. Não precisa responder, estou só delirando (aquarianos são doidos de berço) Vou acompanhar o tópico do Pitta para aprender um pouco mais sobre o assunto. Abraços Compartilhar este post Link para o post Compartilhar em outros sites
Pitta 0 Denunciar post Postado Janeiro 7, 2010 o swf principal, que carrega os outros é feito em AS2?? pois se for, caso ele carregue um swf em AS3, ele não vai funcionar mesmo se não for esse o caso, poste os codigo que você esta usando nos botões []´s Então o código do SWF externo que possui os botões é esse: for(var i:Number = 1; i <= 11; i++){ this["btnInv"+i].addEventListener(MouseEvent.CLICK, onClick); }; function onClick(evt:MouseEvent):void { switch(evt.currentTarget){ case btnInv1: gotoAndStop(1); break; case btnInv2: gotoAndStop(2); break; case btnInv3: gotoAndStop(3); break; case btnInv4: gotoAndStop(4); break; case btnInv5: gotoAndStop(5); break; case btnInv6: gotoAndStop(6); break; case btnInv7: gotoAndStop(7); break; case btnInv8: gotoAndStop(8); break; case btnInv9: gotoAndStop(9); break; case btnInv10: gotoAndStop(10); break; case btnInv11: gotoAndStop(11); break; } } Funciona direitinho, só não funciona quando eu carrego no SWF principal, :=(... Se puder me ajudara eu agradeço. Compartilhar este post Link para o post Compartilhar em outros sites
Eder Fortunato 15 Denunciar post Postado Janeiro 8, 2010 Pitta eu fiz um teste aqui com esse seu codigo, e funcionou posta ai o código usado para o carregamento []´s Compartilhar este post Link para o post Compartilhar em outros sites
Eder Fortunato 15 Denunciar post Postado Janeiro 8, 2010 Elektra no seu caso, eu acho que o problema pode ser que você adicionou o addEventListener no objeto "stage" quando um swf é carregado, a referencia dele ao stage muda, esse passa a ser o swf "pai", que o carregou tente colocar "root" no lugar para ver(a referencia ao root continua, mesmo se o swf for carregado) PS: não conhecia as bandas, gostei da the tower that ate people do Peter Gabriel, valew a dica ;) []´s Compartilhar este post Link para o post Compartilhar em outros sites
Elektra 102 Denunciar post Postado Janeiro 8, 2010 Elektra no seu caso, eu acho que o problema pode ser que você adicionou o addEventListener no objeto "stage" quando um swf é carregado, a referencia dele ao stage muda, esse passa a ser o swf "pai", que o carregou tente colocar "root" no lugar para ver(a referencia ao root continua, mesmo se o swf for carregado) PS: não conhecia as bandas, gostei da the tower that ate people do Peter Gabriel, valew a dica ;) []´s Eder, não acredito, você existe mesmo? rsrsrs É mais uma das minhas "inspirações", sem falar no usocapião do tópico alheio. E você responde, uhhhhh >.< que legal! Essa história da galeria foi por conta de um colega "nada esforçado" que tinha uns códigos bem cabeludos para tentar fazer funfar algo que nem ele mesmo sabia. A metida aqui conseguiu fazer com códigos simples, que estavam ao meu alcance. O cliente não ia ter do que reclamar. Foi através desta situação que me ofereceram auxílio para o form de email (AS3 + PHP), resolveu a questão da codificação, mas o detalhe que faltava para ficar perfeito, veio agora na virada do ano com o auxílio do Foxn ajustando as variáveis do AS3. Ficou bala. Naturalmente tive outras idéias para as funcionalidades da galeria externa, mas o conhecimento no momento ainda não alcança, daí aproveitar os tópicos com relação ao assunto (na cara dura de sempre, pronta para levar pedradas na boa). Vou estudar a sua orientação, sou osso duro de roer, sei que vou conseguir. Foi legal conhecer um pouco de você, gostei. Peter Gabriel é da antiga, mas continua inquieto. PS: editei trocentas vezes, mas você vai ler direitinho desta vez, rsrsrs! Beijos no seu coração, obrigada mesmo. Compartilhar este post Link para o post Compartilhar em outros sites