Comunidad de diseño web y desarrollo en internet

identificacion de ciertas teclas

Citar            
MensajeEscrito el 10 May 2008 11:06 pm
hola a todos
Estoy haciendo un trabajo donde las teclas del teclado se convierten en botones, es decir a presionar la tecla "S" sucede una acción específica, y asi con el resto de teclas, con distintas funciones.

Ej:

Código :

on (release, releaseOutside, keyPress "7") {   
   prevFrame();
}


EL problema es que solo me reconoce las teclas y los numeros, y necesito usar las teclas F, el enter, espaciador y demás. si escribo keyPress "F7" no funciona ¿alguien sabe cómo debo escribir dichas teclas para que sean reconocidas?
muchas gracias

Por glimoh

32 de clabLevel



Genero:Masculino  

Diseñador,dibujante,animador, algo de programación...

firefox
Citar            
MensajeEscrito el 11 May 2008 12:47 am
las flechas UP, DOWN, RIGHT y LEFT
la barra espaciadora SPACE
las teclas especiales SHIFT, CONTROL, TAB, CAPSLOCK, ESCAPE, ENTER, BACKSPACE, INSERT, DELETEKEY, HOME, END, PGDN y PGUP.
para las Fs no encontre un nombre preciso

mas bien creo qeu se tiene que hacer con codigo ascii
aqui te dejo un pdf donde vienen los codigos ascii de las letras, numeros y demas teclas (incluyendo Fs)

http://www.flashmexico.com/Guia-AS2.pdf
esta en la primer pagina

Por tribak

Claber

2448 de clabLevel

6 tutoriales

Genero:Masculino   Héroes

Fotógrafo o algo

firefox
Citar            
MensajeEscrito el 11 May 2008 01:01 am
perdon por el doble post...

creo que para hacerlo funcionar se hace asi

Código :

onClipEvent (keyDown) { // Esto detecta cuando una tecla es presionada
  if (Key.getAscii( ) == 112) { // Revisa si la tecla presionada es F1 (en ascii 112)
    trace("La ultima tecla presionada fue F1");
  }
}


ademas de el getAscii hay otros metodos:

Key.getCode( ) // Base-10 Este es para los nombres normales de las teclas (TAB, SPACE, ENTER, etc)
Key.getAscii( ) // Base-10 Esto es para el codigo ascii de la tecla (112, 113, 114, etc)
Key.isDown(keycode) // Detectar si cierta tecla esta ya presionada
Key.isToggled(keycode) // Determina cuando Caps Lock o Num Lock estan activadas

Por tribak

Claber

2448 de clabLevel

6 tutoriales

Genero:Masculino   Héroes

Fotógrafo o algo

firefox
Citar            
MensajeEscrito el 11 May 2008 09:34 am
muchas gracias. lo intentare

Por glimoh

32 de clabLevel



Genero:Masculino  

Diseñador,dibujante,animador, algo de programación...

firefox
Citar            
MensajeEscrito el 13 May 2008 11:01 pm
no funciona, de hecho saca error para :
Key.getCode( ) // Base-10 Este es para los nombres normales de las teclas (TAB, SPACE, ENTER, etc)
Key.getAscii( ) // Base-10 Esto es para el codigo ascii de la tecla (112, 113, 114, etc)
Key.isDown(keycode) // Detectar si cierta tecla esta ya presionada
Key.isToggled(keycode) // Determina cuando Caps Lock o Num Lock estan activadas

y tampoco reconoce ni TAB, SPACE, ENTER etc.

vale la pena aclarae que uso flash 8

sugerencias.........

Por glimoh

32 de clabLevel



Genero:Masculino  

Diseñador,dibujante,animador, algo de programación...

firefox
Citar            
MensajeEscrito el 14 May 2008 12:59 am

Código :

onClipEvent (keyDown) { 
trace( Key.getAscii( ));
}


Si no quieres complicarte. Pon ese código y presiona la tecla que quieras y te devolverá el numero.
Con eso podrás saber todos los que quieras.

Por JaLeRu

Claber

1913 de clabLevel

7 tutoriales

Genero:Masculino  

Existo

firefox
Citar            
MensajeEscrito el 14 May 2008 04:44 am
muchas gracias por las sugerencias. antes que nada debo decir quer soy novato y hasta ahora me estoy familiarizando con códigos complejos.

la cuestión es la siguiente. Ya entiendo el concpeto del código ascii, cada tecla tiene un número. todo ok. el problema es que no se como aplicarlo, por ejemplo, al presionar la tecla de " ? " , en codigo ascii 39, necesito que vaya al siguiente frame, entonces escribo:

Código :

onClipEvent (keyDown) { 
  if (Key.getAscii( ) == 39) {
    nextFrame();
  }
}


no arroja error, pero no hay respuesta alguna, no funciona.
recibo sugerencias
urgente

Por glimoh

32 de clabLevel



Genero:Masculino  

Diseñador,dibujante,animador, algo de programación...

firefox
Citar            
MensajeEscrito el 14 May 2008 06:17 am
listo xD
lo que pasaba era algo "muy curioso" y comun

veamos tu codigo

Código :

onClipEvent (keyDown) {  //al pasar el evento de clip "tecla presionada"
  if (Key.getAscii( ) == 39) { //si el codigo ascii de la tecla es 39
    nextFrame(); //pasar al siguiente fotograma
  }
}


ahora
como vemos todo esto ocurre en un movieClip
y como ya podras imaginar....
el nextFrame tambien ocurre en el movieclip

si quieres puedes ponerle otro fotograma a tu movieclip y al presionar la tecla que da "39" de ascii veras que el MC cambio (si el nextFrame cambia de fotograma al clip de pelicula)

como arreglarlo...
veamos el codigo improvisado para la ayuda que hize:

Código :

onClipEvent (keyDown) { // lo mismo
  if (Key.getAscii( ) == 39) { //hasta aqui nada nuevo
    trace("La ultima tecla presionada fue: "+Key.getAscii( )); //para comprobar
   _root.nextFrame(); //aqui la diferencia
  }
}


como ves necesitamos hacer que el codigo afecte a el nivel mas alto de la animacion (_root)
por eso se antepone el _root a el nextFrame


:)
perdon por no haberlo visto antes pero no habia tocado el Flash para nada xD

suerte ;)

Por tribak

Claber

2448 de clabLevel

6 tutoriales

Genero:Masculino   Héroes

Fotógrafo o algo

firefox
Citar            
MensajeEscrito el 17 May 2012 09:40 pm
y como hago k me devuelva el valor de una letra pork no me sale

Por p3dr0h4ck

5 de clabLevel



 

msie

   Página 1 de 1

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.