リプタクのもう覚えられません
Google
Web サイト内
topmemo ▶ ストップウォッチ

ActionScript

ストップウォッチ

ストップウォッチサンプル。

【サンプル】

JavaScriptを有効にし、最新のFlashPlayerをインストールお願いしますGet Adobe Flash player

var flag_time:String = "停止中";
var start_time:int;//スタートタイム
var view_time:int = 0;//表示タイム
var my_timer:Timer= new Timer(0.033*1000);//描画間隔(秒)

//--------------------------------------------------------コンストラクタ
func_const();
function func_const(){
	
	func_time_rest();//リセット処理
	
	//再生停止ボタン
	bt_play.addEventListener(MouseEvent.CLICK,func_bt_play);
	function func_bt_play(e:MouseEvent):void{
		func_stopWatch();
		e.updateAfterEvent();
	}
	
	//リセットボタン
	bt_reset.addEventListener(MouseEvent.CLICK,func_bt_reset);
	function func_bt_reset(e:MouseEvent):void{
		func_time_rest();
		e.updateAfterEvent();
	}
	
	//タイマー
	my_timer.addEventListener(TimerEvent.TIMER,func_my_timer);
}

//--------------------------------------------------------リセット処理
function func_time_rest(){
	if(flag_time == "再生中"){
		flag_time = "停止中";
		my_timer.stop();
	}
	view_time = 0;
	func_view_time();//時間描画処理
}

//--------------------------------------------------------再生停止処理
function func_stopWatch(){
	//スタート
	if(flag_time == "停止中"){
		flag_time = "再生中";
		bt_play.gotoAndStop(2);
		start_time = getTimer();//スタートタイム取得
		my_timer.start();//タイマー開始

	//ストップ
	}else{
		flag_time = "停止中";
		bt_play.gotoAndStop(1);
		my_timer.stop();
		view_time = view_time + getTimer() - start_time;
		func_view_time();//時間描画
	}
}

//--------------------------------------------------------タイマイベント
function func_my_timer(e:TimerEvent):void {
	view_time = view_time + getTimer() - start_time;
	start_time = getTimer();
	func_view_time();//時間描画
	e.updateAfterEvent();
}

//--------------------------------------------------------描画
function func_view_time(){
	
	//Dateオブジェクト設定
	var myDate:Date = new Date();
	myDate.hours = 0;
	myDate.minutes = 0;
	myDate.seconds = 0;
	myDate.milliseconds = view_time;
	
	var h:String = String(myDate.hours%10);//時間(最大9時間)
	var m:String;
	var s:String;
	var mi:String;
	
	//分
	if(myDate.minutes < 10){
		m = "0" + String(myDate.minutes);
	}else{
		m = String(myDate.minutes);
	}
	
	//秒
	if(myDate.seconds < 10){
		s = "0" + String(myDate.seconds);
	}else{
		s = String(myDate.seconds);
	}
		
	//10ミリ秒
	if(int(myDate.milliseconds/10) < 1){
		mi = "00"
	}else if(int(myDate.milliseconds/10) < 10){
		mi = "0" + String(int(myDate.milliseconds/10));
	}else{
		mi = String(int(myDate.milliseconds/10));
	}
	
	tf_time.text = h + ":" + m + ":" + s + ":" + mi;//テキスト描画
}
last update 2011.9.12
参考・出典等
「特に無し」

▲page top

topmemogalleryblogtestaboutlinksmail
Copylight(C)2008-2011 Riptac. All Rights Reserved.