2010-02-09 9 views
0

Ceci est ma question en 2 parties. Ma compréhension est petite donc "bière" avec moi.Compte avec décimale "texte dynamique" AS3

Cet exemple compte de 1 à 100. Je veux que la décimale compte jusqu'à dix fois et plus. (a.) Comment est-ce que je boucle la décimale? 1-10 over-and-over. (b.) Comment obtenir la valeur entière et décimale sur le même champ de texte dynamique ?

alt text http://www.ashcraftband.com/myspace/videodnd/icon9.jpg

CHOSE
"Il est un compteur avec son ensemble et des valeurs décimales"
-text déposé recevoir chaîne de nombre entier et virgule
-decimal rapide, nombre entier lent

CODE

/*I made two text fields, change the names and values, but the values didn't 
respond properly. 1000 = 1 sec and 100 = 1/10th or a second. The whole thing changed.*/ 
//working code 

var timer:Timer = new Timer(1000, 100); 
timer.addEventListener(TimerEvent.TIMER, countdown); 
timer.start(); 
function countdown(event:TimerEvent) { 
    myText.text = String(0 + timer.currentCount); 
} 

IDÉES
(. A)
//
RAZ démarrage compte à rebours de fonction (evt $: TimerEvent): void {
timer.reset();
timer.start();

VERBOSE EXEMPLE
si le nombre de moins de 11, faites-le à nouveau

(b.)
// STRING
var temps: String = ensemble + ":" + décimal;

time_txt.texte = compte à rebours;

PROBLÈMES INATTENDUES
valeurs -Modification (1000, 100) ne fonctionnait pas « affecte l'autre numéro »
-Je ne sais pas comment je vais ajouter la vitesse à quelque chose dans la minuterie classe "un autre poste"

alt text http://www.ashcraftband.com/myspace/videodnd/icon_1.jpg

LES DECIMALS SEJOUR DANS LEUR PLACE

//CA, NC, LONDON 
var timer:Timer = new Timer(10); 
var count:int = 0; //start at -1 if you want the first decimal to be 0 
var fcount:int = 0; 

timer.addEventListener(TimerEvent.TIMER, incrementCounter); 
timer.start(); 


function incrementCounter(event:TimerEvent) { 
    count++; 

    var whole_value:int = int(count/100); //change value 
    var tenths:int = int(count/10) % 10; 
    var hundredths:int = int(count) % 10; 

    mytext.text = whole_value + " : " + tenths + hundredths; 
} 

CRITÈRES "J'ai oublié d'inclure 2/10/10"
totalités
X 10 multiples

DECIMALS
dixièmes dec = 10% de ceux
centaines dec = 10% de dixièmes déc

"merci pour l'aide tout le monde"

Répondre

0
var timer:Timer = new Timer(100); 
timer.addEventListener(TimerEvent.TIMER, countdown); 
timer.start(); 
var time = 2000; 
function countdown(event:TimerEvent) { 
time -= 1; 
var seconds = int(time/10); 
var tenths = int(time - seconds*10); 
time_txt.text = seconds + " : " + tenths; 
    if (time == 0) { 
     timer.stop(); 
    } 
} 
+0

ajouté" var huns = int (time - seconds * 100); "Y a-t-il un moyen de contraindre la décimale à 2-places et de faire bouger la plus à droite? –

3

Il est probablement préférable d'utiliser votre propre variable de compte plutôt que celle de la minuterie. Vous voulez quelque chose comme ce qui suit. Chaque fois que la minuterie est activée, le compte sera mis à jour par un. Le "%" est le modulo operator.

var timer:Timer = new Timer(1000); 
var count:int = 0; //start at -1 if you want the first decimal to be 0 

timer.addEventListener(TimerEvent.TIMER, incrementCounter); 
timer.start(); 


function incrementCounter(event:TimerEvent) { 
    count++; 

    var whole_value:int = int(count/10); 
    var decimal_value:int = count % 10; 
    mytext.text = whole_value + " : " + decimal_value; 
} 
+0

merci! même commentaire "J'ai ajouté une centaine de décimales, mais je veux limiter les décimales à 2 places pour l'apparence.Y a-t-il un moyen de le contrôler alors j'ai une décimale de 10ème et une de 100ème boucle" comme un casino " –

1

Adapter Nathan's answer pour 100/EMH vous pourriez faire quelque chose comme ceci:

function incrementCounter(event:TimerEvent) { 
    count++; 

    var whole_value:int = int(count/100); 
    var tenths:int = int(count/10) % 10; 
    var hundredths:int = int(count) % 10; 

    mytext.text = whole_value + " : " + tenths + hundredths; 
} 
+0

c'est mieux, mes décimales restent à leur place maintenant. –

Questions connexes