Comunidad de diseño web y desarrollo en internet online

Mostrar variable en un cuadro de texto

Citar            
MensajeEscrito el 20 Oct 2014 03:55 am
Hola, primero de todo decir que tenco unos conocimientos de as3 nulos :/ Aprendi lo basico de as2

Tengo este codigo

Código :

var fl_SecondsToCountDown:Number = 10;

var fl_CountDownTimerInstance:Timer = new Timer(1000, fl_SecondsToCountDown);
fl_CountDownTimerInstance.addEventListener(TimerEvent.TIMER, fl_CountDownTimerHandler);
fl_CountDownTimerInstance.start();

function fl_CountDownTimerHandler(event:TimerEvent):void
{
   trace(fl_SecondsToCountDown + " segundos");
   fl_SecondsToCountDown--;
}


Estoy haciendo un pequeño programa, la idea es pasarla al Android por eso trabajo en As3, sino lo haria en as2 :_
Lo que necesito es hacer varios botones con sus respectivos cuadros de texto a los que cuando se clicke se inicie la cuenta atras en el cuadro de texto. Si se vuelve a clicar que se vuelva a iniciar, cuando llegue a 0 que reproduzca un sonido.
Es muy complicado hacer esto?
Alguien podria guiarme un poquito?

Por abealpha

5 de clabLevel



 

chrome
Citar            
MensajeEscrito el 20 Oct 2014 03:35 pm

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 20 Oct 2014 06:32 pm
Gracias por el tuto pero ya vi varios tutos como ese y no es lo que estoy buscando.
En as2 hize lo consegui con el siguiente codigo, pero a la hora de pasarlo a as3 me pierdo un poco :S

Código :

botonReset.onPress = function(){ 
    clearInterval(inter); 
    contador = 10; 
    cuentaAtras = function(){
        contador--;
       if(contador ==0){clearInterval(inter);
                tiempo.text = "TIEMPO";
       }
     } 
  inter = setInterval(cuentaAtras, 1000);
}

Por abealpha

5 de clabLevel



 

chrome
Citar            
MensajeEscrito el 20 Oct 2014 08:08 pm
Ok, quieres que al darle a un botón a los 10 segundos se muestre TIEMPO en una caja de texto

Código ActionScript :

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

var timer:Timer = new Timer(10000, 1)
timer.addEventListener(TimerEvent.TIMER_COMPLETE, onFinish)
function onFinish(evt:TimerEvent):void{
  tiempo.text = "TIEMPO";   
}
botonReset.addEventListener(MouseEvent.CLICK, function(evt:MouseEvent){
   timer.start();         
})


En el escenario necesitas un campo de texto con nombre de instancia tiempo y un boton con nombre de instancia botonReset

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 21 Oct 2014 01:26 am
Mil gracias jorge, esto va tomando color ^^

Ahora me encuentro con dos problemas:
1.- La cuenta atras 10,9,8,7... tiene que aparecer en el cuadro de texto. No se como poner la variable en el cuadro de texto, en as3 esta deshabilitada :S
2.- Si se le da al boton la cuenta atras tiene que volever a empezar de 10

Por abealpha

5 de clabLevel



 

chrome
Citar            
MensajeEscrito el 21 Oct 2014 12:56 pm
Algo asi

Código ActionScript :

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

var timer:Timer = new Timer(10000, 1)
timer.addEventListener(TimerEvent.TIMER, onTick)
timer.addEventListener(TimerEvent.TIMER_COMPLETE, onFinish)
function onTick(evt:TimerEvent):void{
  tiempo.text = timer.count+" segundos";   
}
function onFinish(evt:TimerEvent):void{
  tiempo.text = "TIEMPO";   
}
botonReset.addEventListener(MouseEvent.CLICK, function(evt:MouseEvent){
   timer.reset();
   timer.start();         
})

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 21 Oct 2014 04:06 pm
:D Casi,
me dice que el count+ es una propiedad posiblemente no definida mediante una referencia con tipo estatico flash.utils:Timer

He probado con timer.currentCount + consiguiendo que aparezca la cuenta en el cuadro de texto, el problema es que muestra la cuenta 1, 2, 3... en vez de 10, 9, 8...

Como puedo solucionarlo?

Por abealpha

5 de clabLevel



 

chrome
Citar            
MensajeEscrito el 21 Oct 2014 04:07 pm
10 - currentCount ?

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 21 Oct 2014 04:59 pm
Perfecto :D

Ahora mi pregunta es: tengo que poner en el programa como unos 20 contadores con diferentes valores, la unica manera es esta? no es demasiado codigo? :S

Código :

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

///Contador 1
var timer:Timer = new Timer(1000, 10)
timer.addEventListener(TimerEvent.TIMER, onTick)
timer.addEventListener(TimerEvent.TIMER_COMPLETE, onFinish)
function onTick(evt:TimerEvent):void{tiempo.text = 10 - timer.currentCount+" segundos";}
function onFinish(evt:TimerEvent):void{tiempo.text = "TIEMPO";}
botonReset.addEventListener(MouseEvent.CLICK, function(evt:MouseEvent){timer.reset();timer.start();})
///Contador 2
var timer2:Timer = new Timer(1000, 10)
timer2.addEventListener(TimerEvent.TIMER, onTick2)
timer2.addEventListener(TimerEvent.TIMER_COMPLETE, onFinish2)
function onTick2(evt:TimerEvent):void{tiempo2.text = 10 - timer2.currentCount+" segundos";}
function onFinish2(evt:TimerEvent):void{tiempo2.text = "TIEMPO";}
botonReset2.addEventListener(MouseEvent.CLICK, function(evt:MouseEvent){timer2.reset();timer2.start();})
///Contador 3
....

Por abealpha

5 de clabLevel



 

chrome
Citar            
MensajeEscrito el 21 Oct 2014 05:28 pm
Para que no fuera asi, deberías entender lo que hace. La idea es que puedes agregar tantos listeners como "contadores" quieras, un onTick1, onTick2, onTick3, etc que muestren sus valores en distintos campos y que dejen de mostrar cuando el contador llegue a X ... En vez de pasarle un limite al timer lo dejas corriendo Ahora si son contadores independientes que pueden ser parados diferenciadamente, tienes que hacer una clase wrapper de timer en donde le pases por ejemplo el campo de texto y el limite a tener en cuenta

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 21 Oct 2014 06:14 pm
:? Creo que me pierdo un poco, espero que asi vaya bien.
Muchisimas gracias por tu rápida ayuda, cuando tenga el programa acabado lo posteare aquí y en el market para que le heches un vistazo.
Sin duda te mencionare en la parte de agradecimientos :)

Por abealpha

5 de clabLevel



 

chrome
Citar            
MensajeEscrito el 10 Nov 2014 06:17 pm
Se me olvido poner el resultado :)

Web

Por abealpha

5 de clabLevel



 

chrome

 

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