Edilsontec 0 Denunciar post Postado Janeiro 7, 2010 Olá amigos, sou novo na área de Flash CS4, mas estou disposto a aprender tudo e esse fórum tem me ajudado muito, no momento estou com um problema que a primeira vista parece ser simples mas tem me dado uma boa dor de cabeça. Estou montando um site bem simples que contem 3 Layers Actions = Código action script 3.0 no primeiro Frame Rótulos = Nome dos botões Layer 1(Frames de Conteúdo) Existem 4 botões e respectivamente 4 frames de conteúdo que são Home, Loja, empresa e Contato Trasformei os textos em botões, dei nome, instânciei direitinho com nomes identicos pra ficar simples. E estou usando o seguinte código na camada actions, no primeiro frame: ========================= Stop(); function navegacao(event:MouseEvent):void { gotoAndStop(event.target.name); } home.event.AddEventListener(MouseEvent.CLICK,navegacao); loja.event.AddEventListener(MouseEvent.CLICK,navegacao); empresa.event.AddEventListener(MouseEvent.CLICK,navegacao); contato.event.AddEventListener(MouseEvent.CLICK,navegacao); ========================== O Problema é que quando executo o código ele entra em loop e não para, e recebo as seguintes mensagens de erro: scene1, Layer 'Actions' frame1, line6, 1119: Access of possibly undefined property event through a reference with static type flash.display:SimpleButton. scene1, Layer 'Actions' frame1, line7, 1119: Access of possibly undefined property event through a reference with static type flash.display:SimpleButton. scene1, Layer 'Actions' frame1, line8, 1119: Access of possibly undefined property event through a reference with static type flash.display:SimpleButton. scene1, Layer 'Actions' frame1, line9, 1119: Access of possibly undefined property event through a reference with static type flash.display:SimpleButton. Como podem ver ele diz que a propriedade do evento é indefinida para as linhas de código que contém os nomes dos botões que chamam os frames. Alguem poderia me dar uma ajuda pois já pesquisei muito e não encontrei ajuda, o que ele deveria fazer é abrir estaticamente no primeiro frame (home) e navegar nos outros frames de acordo com o botão clicado. Obrigado. Compartilhar este post Link para o post Compartilhar em outros sites
Matheus Brito 12 Denunciar post Postado Janeiro 7, 2010 Ta errado a adicao do event. bt.addEventListener(MouseEvent.CLICK,function); Abs Compartilhar este post Link para o post Compartilhar em outros sites
Edilsontec 0 Denunciar post Postado Janeiro 7, 2010 Ta errado a adicao do event. bt.addEventListener(MouseEvent.CLICK,function); Abs Ainda não entendi, no caso esse bt. eu devo colocar como? Se cada botão tem seu nome de instância diferente, por exemplo ficaria home.bt.addEventListener(MouseEvent.CLICK,function); ? ou home.addEventListener(MouseEvent.CLICK,function); ? Esse código eu consegui em uma revista especializada, mas que como eu já percebi está errado, pois segui o passo a passo perfeitamente, tenho experiencia em outras linguagens por isso programação pra mim não é um bixo de 7 cabeças, mas no action script 3.0 ainda sou muito leigo. Poderia me mostrar o código correto? Muito obrigado. Compartilhar este post Link para o post Compartilhar em outros sites
Matheus Brito 12 Denunciar post Postado Janeiro 7, 2010 a segunda forma é a correta. Exemplo tenho um botao chamado teste. teste.addEventListener(MouseEvent.CLICK, helloWorld); function helloWorld(e:MouseEvent):void{ trace("Meu primeiro Hello World em actionscript usando MouseEvents"); } Compartilhar este post Link para o post Compartilhar em outros sites
Edilsontec 0 Denunciar post Postado Janeiro 8, 2010 Por incrível que pareça não funcionou, eu devo estar fazendo alguma coisa mais de errado. Será que alguem poderia me ensinar o seguinte. Um código simples para que eu possa me basear tipo. Vou fazer 2 frames cada um com um conteúdo e colocar um botão no primeiro que deve levar ao segundo quando clicado. que código devo usar? Alguem por favor me mostre isso para action script 3.0, que enquando me respondem vou reinstalar meu Flash que até já estou desconfiado dele hehe, não pode algo tão simples não funcionar com a quantidade de códigos e tentativas que já fiz, já estou até assustado. Compartilhar este post Link para o post Compartilhar em outros sites
Elektra 102 Denunciar post Postado Janeiro 10, 2010 Um exemplo simples, com 3 botões, sem target: stop(); home_btn.addEventListener(MouseEvent.CLICK, gotoHome); empresa_btn.addEventListener(MouseEvent.CLICK, gotoEmpresa); contato_btn.addEventListener(MouseEvent.CLICK, gotoContato); function gotoHome(me:MouseEvent):void { gotoAndStop(1); } function gotoEmpresa(me:MouseEvent):void { gotoAndStop(2); } function gotoContato(me:MouseEvent):void { gotoAndStop(3); } Abraços Compartilhar este post Link para o post Compartilhar em outros sites
dinized 0 Denunciar post Postado Novembro 10, 2010 DEIXA EU APROVEITAR O CÓDIGO Um exemplo simples, com 3 botões, sem target: stop(); home_btn.addEventListener(MouseEvent.CLICK, gotoHome); empresa_btn.addEventListener(MouseEvent.CLICK, gotoEmpresa); contato_btn.addEventListener(MouseEvent.CLICK, gotoContato); function gotoHome(me:MouseEvent):void { GOSTARIA DE SABER COMO Q FAZ PARA COMEÇAR DE UM FRAME ATÉ OUTRO FRAME, TEM COMO? gotoAndPlay(1); ATÉ gotoAndStop(20); } function gotoEmpresa(me:MouseEvent):void { gotoAndStop(2); } function gotoContato(me:MouseEvent):void { gotoAndStop(3); } Abraços Compartilhar este post Link para o post Compartilhar em outros sites
Elektra 102 Denunciar post Postado Novembro 11, 2010 Fica assim: No frame 1: stop(); function gotoHome(me:MouseEvent):void { gotoAndPlay(1); } No frame 20: stop(); function gotoEmpresa(me:MouseEvent):void { gotoAndPlay(20); } E assim por diante. Apenas observe em não usar isso indefinidamente, em um determinado ponto o Flash se perde com esse tipo de navegação. Abraços Compartilhar este post Link para o post Compartilhar em outros sites