Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

FLASH CS3

onkeyup não funciona em função

Recommended Posts

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

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

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

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

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

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

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

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

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

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

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.