开发者

“zero placeholder” for working counter as3

How do make a zero placeholder for the counter?

My thought was an "if" condition with greater and lesser would work.

if count is more than .00 and less than 10.00, add "0000000" etc.

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

CODE "from some of the best minds"

//counts
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;  
} 

///////////////////////////////////////////////

//counts and accelerates
//CA, NC, LONDON "increments"
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++;  
  //
  fcount=int(count*count/10000);//starts out slow... then speeds up 
  //
  var whole_value:int = int(fcount / 100); //change value 
  var tenths:int = int(fcount / 10) % 10;   
  var hundredths:int = int(fcount) % 10;   

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

alt text http://www.ashcraftband.com/myspace/videodnd/icon-3.jpg

I makes zeros...eeeeerrrrrrr...not animation, don't laugh! curses

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++;  
  //
  fcount=int(count*count/10000);//starts out slow... then speeds up 
  //
  var whole_value:int = int(fcount / 100); //change value 
  var tenths:int = int(fcount / 10) % 10;   
  var hundredths:int = int(fcount) % 10;   
////////////// 
 function formatCount(i:int):String { 

    var fraction:int = i % 100; 
    var whole:int = i / 100; 

    return ("0000000" + whole).substr(-7, 7) + "." + (fraction < 10 ? "0" : "") + fraction; 
} 

function test():void { 
    for (var i:int = 1;开发者_如何学JAVA i<100000; i += 3) { 
        trace(i + " -> " + formatCount(i)); 
    } 
} 
//////////////
mytext.text = formatCount(whole_value + " : " + tenths + hundredths); 

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

"thanks for the help guys"


Here's a function to format it the way you want.

function formatCount(i:int):String {

    var fraction:int = i % 100;
    var whole:int = i / 100;

    return ("0000000" + whole).substr(-7, 7) + "." + (fraction < 10 ? "0" : "") + fraction;
}

function test():void {
    for (var i:int = 1; i<100000; i += 3) {
        trace(i + " -> " + formatCount(i));
    }
}
]]>

Sample output (spacing added):

1     -> 0000000.01
4     -> 0000000.04
7     -> 0000000.07
10    -> 0000000.10
13    -> 0000000.13
97    -> 0000000.97
100   -> 0000001.00
103   -> 0000001.03
235   -> 0000002.35
520   -> 0000005.20
997   -> 0000009.97
1000  -> 0000010.00
1003  -> 0000010.03
99997 -> 0000999.97


As far as I know you need to do that yourself:

Here's some code.


here is a quick example, it is pretty straight forward, but let me know if you have any questions.

var n:Number = 999.99123;
var minLength:int = 15;
var s:String = n.toFixed(2);
var diff:int = minLength - s.length;

while (diff > 0) {
    s = '0' + s;
    diff--;
}

trace(s);

EDIT: did you want "tenths" to always be 0?


MILLIONS COUNTER WITH ZERO PLACEHOLDERS

//CA, NC, LONDON, ED, GA "increments"
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++;  
  fcount=int(count*count/10000);//starts out slow... then speeds up 
  mytext.text = formatCount(fcount);
}

function formatCount(i:int):String { 
     var fraction:int = i % 100; 
     var whole:int = i / 100;  

    return ("0000000" + whole).substr(-7, 7) + "." + (fraction < 10 ? "0" + fraction : fraction); 
} 
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜