Comunidad de diseño web y desarrollo en internet online

conflicto con teclado

Citar            
MensajeEscrito el 25 Sep 2013 03:02 pm
Hola como puedo arreglar un conflicto que tengo con el teclado.....a ver me explico....me muevo por varias escenas en la primera hay un video que cuando se supone que presiono una tecla m salta a la escena 2 donde tengo un texto input con teclado claramente....cada vez que presiono una tecla me salta a la escena 1 sin dejarme realizar las acciones de la escena 2....es decir no m deja meter los 6 digitos correspondientes para ejecutar informacion con otro texto dinamico que saldra dependiendo de los digitos introducidos en el texto....si pruebo con un boton me funciona correctamente pero con teclado no :(

Por as3car

23 de clabLevel



Genero:Femenino  

safari
Citar            
MensajeEscrito el 26 Sep 2013 08:00 pm
Que código has usado para que haga eso?

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

chrome
Citar            
MensajeEscrito el 26 Sep 2013 10:52 pm
he usado as3.....este es el codigo de la primera escena

stage.addEventListener(KeyboardEvent.KEY_DOWN,irEscena2);

function irEscena2 (evento:KeyboardEvent):void {

trace(evento.keyCode);
gotoAndPlay(1,"Escena2")
}


y este es el de la 2 escena



stop();

var swf:MovieClip;
var loader:Loader=new Loader();
var loader2:Loader=new Loader();

miTexto1.maxChars=6;

miTexto1.addEventListener(KeyboardEvent.KEY_DOWN,handler);

miTexto2.text="";
function handler(event:KeyboardEvent){

if (event.charCode==13)
cargaVideo();
}
}
function cargaVideo(){
if (miTexto1.text=="ABC123"||miTexto1.text=="123XYW"||miTexto1.text=="CAR98K"){
miTexto2.text="";
var newSWFRequest:URLRequest= new URLRequest("video1.swf");
loader.load(newSWFRequest);
loader.x=275;
loader.y=110;
addChild(loader);
miTexto1.text="";

}else{
if (miTexto1.text=="A8542U"||miTexto1.text=="8ZMDT4"||miTexto1.text=="GSI2XY"){
miTexto2.text="";
var newSWFRequest2:URLRequest= new URLRequest("video2.swf");
loader2.load(newSWFRequest2);
loader2.x=275;
loader2.y=110;
addChild(loader2);
miTexto1.text="";
}else{

miTexto2.text="EL VIDEO MARCADO NO ESTA DISPONIBLE"
miTexto1.text="";
}

}


y na lo que te decia si en vez de usar cualquier tecla para cambiar de escena uso un boton pues funciona pero con las teclas....va a la escena dos pero desde que voy a meterle los 6 digitos para comparar e introducir videos o no....pues me salta a la escena 1 desde que presiono el 1 caracter sin yo haberle dado esa instrucción....bueno espero que me puedas ayudar....gracias por tu interés y muchas gracias por ayudar

Por as3car

23 de clabLevel



Genero:Femenino  

safari
Citar            
MensajeEscrito el 27 Sep 2013 05:36 pm
En el frame de la escena 2 quita el listener

stage.removeEventListener(KeyboardEvent.KEY_DOWN,irEscena2);

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

chrome
Citar            
MensajeEscrito el 28 Sep 2013 09:21 am
vaya...funciona...y mira que habia probado eso pero en la escena 1 y tb poniendola en ambas escenas pero en la 2 sola creo k no lo habia probado porque funciona perfectamente....muchas gracias por la ayudita

Por as3car

23 de clabLevel



Genero:Femenino  

safari
Citar            
MensajeEscrito el 28 Sep 2013 11:47 am
hola jorge podrias responderme a otra preguntita....como podria hacer para usar el evento timer en el programita que puse anteriormente...es decir quiero que a los 5 segundos si no se ha presionado ninguna tecla pues que me devuelva a la escena 1 he intentado usar alguna de los temas que hay por aqui en el foro pero no m vuelve a la escena 1 se queda como si no hiciera nada....gracias

Por as3car

23 de clabLevel



Genero:Femenino  

safari
Citar            
MensajeEscrito el 30 Sep 2013 03:39 pm
Con un timer lo arrancas y usas un flag en el Keydown para evitar que vuelva, algo si

Código :

import flash.utils.Timer;
import flash.events.TimerEvent;
import flash.events.KeyboardEvent;

var activity:Boolean = false; //flag para el teclado
var tick:Timer = new Timer(5000); /cada 5 segundos
tick.addEventListener(TimerEvent.TIMER, onTick)
stage.addEventListener(KeyboardEvent.KEY_DOWN, onKey);
//si no hay actividad vuelve atras
function onTick(evt:TimerEvent):void{
   if(!activity){
      tick.stop();
                gotoAndStop("inicio")
   } else {
      activity = false; //cambio el flag
   }
}
//al oprimir una tecla se anula el flag y el timer no vuelve
function onKey(evt:KeyboardEvent):void{
   activity = true;   
}
tick.start() //arranco el timer


Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

chrome
Citar            
MensajeEscrito el 30 Sep 2013 04:26 pm
muchas gracias kilo,,,,me ha venido perfecto....:)

Por as3car

23 de clabLevel



Genero:Femenino  

safari

 

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