Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 13-12-2004, 14:45   #1 (permalink)
Neuer User
 
Benutzerbild von fliegerlui
 
Registriert seit: Nov 2002
Beiträge: 11
Unhappy Textfeld runterzählen mit einer Nachkommastelle

Hallo zusammen,
ich bekomme es einfach nicht hin ein Textfeld per TimerID / function so runterzuzählen lassen das auch die Null hinter dem Komma dargestellt wird.
Beispiel 90.3--90.2--90.1--90.0.
Statt der 90.0 erscheint immer nur 90 im Textfeld beim Aufruf des Timers.
Kann mir jemand auf die Sprünge helfen?
Gruß
Fliegerlui

Beispiel:
meintextfeld.text = "277";
timerID = setInterval(zeit,550);
function zeit(){
meintextfeld.text = Number(meintextfeld.text)-1;
if (meintextfeld.text > 298 && _framesloaded > 129){
stop();
}
}
fliegerlui ist offline   Mit Zitat antworten
Alt 13-12-2004, 15:52   #2 (permalink)
Flash & TYPO3
 
Registriert seit: Oct 2003
Ort: Bayern
Beiträge: 2.700
Versteh dich nicht ganz. Was willst du machen?
Mit setInterval eine Zahl runter-/nochzählen lassen und diese immer im Textfeld anzeigen lassen?
__________________
Mediendesign-Student
johanness ist offline   Mit Zitat antworten
Alt 14-12-2004, 06:18   #3 (permalink)
Neuer User
 
Benutzerbild von fliegerlui
 
Registriert seit: Nov 2002
Beiträge: 11
Zitat:
Zitat von johanness
Versteh dich nicht ganz. Was willst du machen?
Mit setInterval eine Zahl runter-/nochzählen lassen und diese immer im Textfeld anzeigen lassen?
Ja genau so wie ein normaler counter, aber mit einer Nachkommastelle,
die halt immer ( auch wenn ganze Zahl ) angezeigt wird.
fliegerlui ist offline   Mit Zitat antworten
Alt 14-12-2004, 06:41   #4 (permalink)
carpe noctem
 
Registriert seit: Aug 2004
Beiträge: 114
Post angepasstes Script

Hallo fliegerlui

Zitat:
Zitat von fliegerlui
Ja genau so wie ein normaler counter, aber mit einer Nachkommastelle,
die halt immer ( auch wenn ganze Zahl ) angezeigt wird.
Versuchs mal mit folgendem Script:
ActionScript:
  1. meintextfeld_var = "277";
  2. timerID = setInterval(zeit,550);
  3. function zeit(){
  4.     meintextfeld_var = String(Number(meintextfeld_var)-0.1);
  5.     //zähle die Variable um 0.1 runter
  6.     //und verwandle sie in einen String, damit die Funktion
  7.     //.split darauf angewendet werden kann
  8.     my_array = meintextfeld_var.split(".");
  9.     //splitte die Variable am Punkt
  10.     //my_array sieht dann folgendermaßen aus:
  11.     //my_array[0] = Zahl vor dem Komma
  12.     //my_array[1] = Zahl hinter dem Komma
  13.     if(my_array[1] == undefined){
  14.         //wenn der Teil hinter dem Punkt undefined ist,
  15.         //d.h. wenn es keine Nachkommastelle gibt,
  16.         //füge ein .0 hintendran:
  17.         meintextfeld_var += ".0";   
  18.     }
  19.     meintextfeld.text = meintextfeld_var;
  20.     //zeige die Variable im Textfeld an
  21.     if (meintextfeld.text > 298 && _framesloaded > 129){
  22.         stop();
  23.     }
  24. }
allerdings sind mir noch zwei Punkte aufgefallen:
1.) Bei dieser Rechnung
ActionScript:
  1. meintextfeld.text = Number(meintextfeld.text)-1;
entstehen doch garkeine Nachkommastellen, die angezeigt werden könnten, oder?
2.) Das meintextfeld.text > 298 in folgender Zeile:
ActionScript:
  1. if (meintextfeld.text > 298 && _framesloaded > 129){
ist doch eigentlich unnötig, oder? Denn du beginnst ja mit meintextfeld.text = "277" und zählst die Variable dann immer weiter runter... wie soll sie dann jemals >298 werden?

gruß
__________________
... to be continued ...

Geändert von xyz.xyz.xyz (14-12-2004 um 06:49 Uhr) Grund: Kommentare ins Script eingefügt
xyz.xyz.xyz ist offline   Mit Zitat antworten
Alt 14-12-2004, 06:53   #5 (permalink)
Neuer User
 
Benutzerbild von fliegerlui
 
Registriert seit: Nov 2002
Beiträge: 11
Thumbs up

Zitat:
Zitat von xyz.xyz.xyz
Hallo fliegerlui



Versuchs mal mit folgendem Script:
ActionScript:
  1. meintextfeld_var = "277";
  2. timerID = setInterval(zeit,550);
  3. function zeit(){
  4.     meintextfeld_var = String(Number(meintextfeld_var)-0.1);
  5.     //zähle die Variable um 0.1 runter
  6.     //und verwandle sie in einen String, damit die Funktion
  7.     //.split darauf angewendet werden kann
  8.     my_array = meintextfeld_var.split(".");
  9.     //splitte die Variable am Punkt
  10.     //my_array sieht dann folgendermaßen aus:
  11.     //my_array[0] = Zahl vor dem Komma
  12.     //my_array[1] = Zahl hinter dem Komma
  13.     if(my_array[1] == undefined){
  14.         //wenn der Teil hinter dem Punkt undefined ist,
  15.         //d.h. wenn es keine Nachkommastelle gibt,
  16.         //füge ein .0 hintendran:
  17.         meintextfeld_var += ".0";   
  18.     }
  19.     meintextfeld.text = meintextfeld_var;
  20.     //zeige die Variable im Textfeld an
  21.     if (meintextfeld.text > 298 && _framesloaded > 129){
  22.         stop();
  23.     }
  24. }
allerdings sind mir noch zwei Punkte aufgefallen:
1.) Bei dieser Rechnung
ActionScript:
  1. meintextfeld.text = Number(meintextfeld.text)-1;
entstehen doch garkeine Nachkommastellen, die angezeigt werden könnten, oder?
2.) Das meintextfeld.text > 298 in folgender Zeile:
ActionScript:
  1. if (meintextfeld.text > 298 && _framesloaded > 129){
ist doch eigentlich unnötig, oder? Denn du beginnst ja mit meintextfeld.text = "277" und zählst die Variable dann immer weiter runter... wie soll sie dann jemals >298 werden?

gruß
Hast ja recht, das mit den 298 war verkehrt. Danke für deine Hilfe es funzt jetzt!!
fliegerlui ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 11:43 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele