Stoppuhranzeige (Textfelder und Anzeigeziffern via split getrennt) läuft nicht [Flash 11]
| Beiträge: 2 Registriert: Jul 2012
| 13.07.2012, 12:19
Hallo. Ich habe mit Action Script 3 eine Stoppuhr erstellt. Da diese immer gesprungen ist, wenn die Zahl 1 angezeigt wurde, habe ich für jede Ziffer ein Textfeld erstellt und mit split den Timer laufen lassen. Jedoch setzt der Timer sich dann nicht mehr auf 1 und läuft auch nicht mehr wirklich.
Kann mir da einer helfen??
Hier der Code:
package {
import flash.utils.Timer;
import flash.events.*;
import flash.display.*;
public class main extends MovieClip {
public static var myTimer:Timer = new Timer(10, 0);
public static var startTime:Date = new Date();
public function bin() {
// constructor code
}
}
}
function counterInit() {
stopHour0TXT.text = "0";
stopHour1TXT.text = "0";
stopMin0TXT.text = "0";
stopMin1TXT.text = "0";
stopSec0TXT.text = "0";
stopSec1TXT.text = "0";
stopMil0TXT.text = "0";
stopMil1TXT.text = "0";
stopMil2TXT.text = "0";
}
function beginning() {
myTimer.addEventListener("timer", updateDisplay);
myTimer.start();
}
function updateDisplay(event:TimerEvent):void {
var currentTime:Date = new Date();
var counterTime:Date = new Date(currentTime.time - startTime.time);
showTime(counterTime);
}
function showTime(counterTime:Date):void {
var milliseconds = counterTime.getMilliseconds();
var seconds = counterTime.getSeconds();
var minutes = counterTime.getMinutes();
var hours = counterTime.getHours() - 1;
if (milliseconds < 100) {milliseconds = "0"+milliseconds;}
if (seconds < 10) {seconds = "0"+seconds;}
if (minutes < 10) {minutes = "0"+minutes;}
if (hours < 10) {hours = "0"+hours;}
var millisecondsArr:Array = milliseconds.split('');
var secondsArr:Array = seconds.split('');
var minutesArr:Array = milliseconds.split('');
var hoursArr:Array = milliseconds.split('');
stopMil2TXT.text = millisecondsArr[2];
stopMil1TXT.text = millisecondsArr[1];
stopMil0TXT.text = millisecondsArr[0];
stopSec1TXT.text = secondsArr[1];
stopSec0TXT.text = secondsArr[0];
stopMin1TXT.text = minutesArr[1];
stopMin0TXT.text = minutesArr[0];
stopHour1TXT.text = hoursArr[1];
stopHour0TXT.text = hoursArr[0];
}
startBTN.addEventListener(MouseEvent.CLICK, startClick);
function startClick(evt:MouseEvent):void {
beginning();
}
stopBTN.addEventListener(MouseEvent.CLICK, stopClick);
function stopClick(evt:MouseEvent):void {
myTimer.stop();
}
resetBTN.addEventListener(MouseEvent.CLICK, resetClick);
function resetClick(evt:MouseEvent):void {
myTimer.removeEventListener("timer", updateDisplay);
myTimer = new Timer(10, 0);
startTime = new Date();
counterInit();
}
counterInit(); | | | Beiträge: 3000 Wohnort: Köln Registriert: Oct 2007
| 13.07.2012, 20:17
|
|