FLASH CS3 0 Denunciar post Postado Março 13, 2008 onkeyup --> seta para cima do teclado ok? this.bola_mc.onKeyUp = function { this._parent.bola_mc._visible = false } mas n funciona com um "MC" no palco --> bola_mc pqq?? Compartilhar este post Link para o post Compartilhar em outros sites
Eder Fortunato 15 Denunciar post Postado Março 14, 2008 veja no help do flash a classe Key, com ela é possível fazer isso, além de ser melhor que essa forma []´s Compartilhar este post Link para o post Compartilhar em outros sites
FLASH CS3 0 Denunciar post Postado Março 14, 2008 Nossa aquela função getKeyPressed não deu pra entender um sentido logico.. eu tentei fazer igual a parte de cima sem essa função e não funcionou.. alia n funcionou de nenhum geito.. <O> o help do flash diz isso: my_btn.onKeyDown = function() { trace("onKeyDown: "+this._name+" (Key: "+getKeyPressed()+")"); }; my_btn.onKeyUp = function() { trace("onKeyUp: "+this._name+" (Key: "+getKeyPressed()+")"); }; function getKeyPressed():String { var theKey:String; switch (Key.getAscii()) { case Key.BACKSPACE : theKey = "BACKSPACE"; break; case Key.SPACE : theKey = "SPACE"; break; default : theKey = chr(Key.getAscii()); } return theKey; } Compartilhar este post Link para o post Compartilhar em outros sites
Eder Fortunato 15 Denunciar post Postado Março 14, 2008 você viu o exemplo errado, veja esse: var keyListener:Object = new Object(); keyListener.onKeyUp = function() { trace("UP -> Code: "+Key.getCode()+"\tASCII: "+Key.getAscii()+"\tKey: "+chr(Key.getAscii())); }; Key.addListener(keyListener); []´s Compartilhar este post Link para o post Compartilhar em outros sites
FLASH CS3 0 Denunciar post Postado Março 14, 2008 bom .. o que eu sei .. é q cada tecla tem um codigo. só não entendo onde colocar ele.. pois onde faço referencia ao MC nesse codigo? var keyListener:Object = new Object(); keyListener.onKeyUp = function() { trace("UP -> Code: "+Key.getCode()+"\tASCII: "+Key.getAscii()+"\tKey: "+chr(Key.getAscii())); }; Key.addListener(keyListener); preciso colocar a opção de teclado junto com o onRollOver numa função.. e esse exemplos não estão fazendo muito sentido.. this.mc.anterior.onRollOver = this.mc.anterior.onKeyUp = function () { } Compartilhar este post Link para o post Compartilhar em outros sites
Weverton N 0 Denunciar post Postado Março 14, 2008 Seguinte amigo, os eventos da classe Key não são aplicados á movieClips, afinal, ele controla quando uma tecla é pressionada, e não quando se passa o mouse em cima do mc. Então, para voc:e colocar os dois eventos, utilize uma função única para os dois, e defina os dois handlers, dessa maneira: function funcaoBotao(){ //aqui você vai colocar as ações que vão ser disparadas no rollover e no keypress } var keyListener:Object = new Object(); keyListener.onKeyUp = function() { funcaoBotao(); }; Key.addListener(keyListener); this.mc.anterior.onRollOver = function(){ funcaoBotao(); } Veja se funciona. Compartilhar este post Link para o post Compartilhar em outros sites
FLASH CS3 0 Denunciar post Postado Março 14, 2008 BA deu certinho weverton.. Brigadão cara.. Mas sem querer abusar.. para fazer a esquerda e direta ou qualquer outra tecla, tenho q usar os codigos do dicionario action né.. e para inserir esses codigos como ficaria a sintaxe?? key.37 ? mais ou menos isso? Compartilhar este post Link para o post Compartilhar em outros sites
Weverton N 0 Denunciar post Postado Março 14, 2008 Para as telcas principais como UP, DOWN, HOME, etc.. cada uma já tem seu nome cadastrado, agora para as outras tem que especificar o código: Ficaria assim, para esquerda e direita: var keyListener:Object = new Object(); keyListener.onKeyUp = function() { if (Key.isDown(Key.RIGHT)||Key.isDown(Key.LEFT)) { funcaoBotao(); } }; Key.addListener(keyListener); stop() Para outras teclas: var keyListener:Object = new Object(); keyListener.onKeyUp = function() { if (Key.getCode()==Key.getAscii("A")) { trace("foi") } }; Key.addListener(keyListener); stop() Compartilhar este post Link para o post Compartilhar em outros sites
FLASH CS3 0 Denunciar post Postado Março 14, 2008 funcionou certinho weverton.. só uma coisa estranha.. hehe essas minhasfunções q eu chamo qdo o botãp esta precionado cada uma tem um tween.. mas parece q quando eu fico segurando o botão ele fica recomeçando a o tween toda hora.. como se eu tivesse apertando milhoes de veses o botão.. parece q ta em loop... var keyListener:Object = new Object(); keyListener.onKeyDown = function() { if (Key.isDown(Key.RIGHT)) { proximo() } if (Key.isDown(Key.LEFT)) { anterior() } if (Key.isDown(Key.UP)) { baixo() } if (Key.isDown(Key.DOWN)) { cima() } }; Key.addListener(keyListener); Compartilhar este post Link para o post Compartilhar em outros sites
FLASH CS3 0 Denunciar post Postado Março 14, 2008 aaah! o keydown é só uma pressionada.. por isso fica em loop qdo eu seguro... <O> mas como eu faço para ficar segurando <O> pois estou usando um stop no KeyUp.. E quero qo usuario fique segurando o botao para manter ação em funcionamento.. Abraço. Compartilhar este post Link para o post Compartilhar em outros sites
Weverton N 0 Denunciar post Postado Março 14, 2008 Vixi.. aí e mais complicado. No caso, você poderia fazer um listener keyListener.onKeyDown para setar uma variavel com pressed = true e um keyListener.onKeyUp para setar a variavel como pressed = false. Daí você usa essa variável para ver quanto tempo sua animação rola. Abs Compartilhar este post Link para o post Compartilhar em outros sites