{AS2.0} setIntervalの単純なサンプルソース。

単純に-1だけを1秒後に実行するサンプルから機能を一づつ追加していきます。

二行目の hoge(); はswfが読み込まれてから即実行させる為の記述。これがないと、setIntervalで設定した時間分遅れて実行される。

var time = 15;
hoge();
function hoge(){
	timeField.text = time--;
}
setInterval(hoge,1000);// 1000ミリ秒 = 1秒

01_setInterval.swf

flaファイル

0で止める

このままだと永遠に-1を実行し続けるので、0になったら止める様にします。

var time = 5;

hoge();
function hoge(){
	if( time >= 0 ){
	timeField.text = time--;
	}
	trace(timeField.text);
}

setInterval(hoge,1000);// 1000ミリ秒 = 1秒

if文を追加して0以上はテキストフィールドに書き込まないようにしました。しかしこのままだと、setIntervalはまだ実行し続けているので、さらに下記のように修正。

var time = 5;

hoge();
function hoge(){
	if( time >= 0 ){
	timeField.text = time--;
	trace(timeField.text);
	}else {
		clearInterval(routine);
		}
}
routine = setInterval(hoge,1000);// 1000ミリ秒 = 1秒

clearInterval 関数とintervalIDを使って、setIntervalを削除。

03_setInterval.swf

flaファイル

上記スクリプトのカウントダウンと同時に音を鳴らしてみる

flashで音の再生は3行ほどのスクリプトの追加でできました。

var Snd:Sound = new Sound();//サウンドクラスのインスタンス
Snd.attachSound("clickSnd");//サウンドオブジェクトのインスタンスに設定

var time = 5;

hoge();
function hoge(){
	if( time >= 0 ){
	timeField.text = time--;
	
 	Snd.start();//音の再生

	trace(timeField.text);
	}else {
		clearInterval(routine);
		}
}

routine = setInterval(hoge,1000);

04_setInterval.swf

flaファイル

スタートボタンで実行するように修正。

スタートボタンを作って、フレームに下記を記載。具体的な構成はこちらを参照ください。

stop();
strtBtn.onRelease = function(){
	_root.gotoAndStop(2);
	}

05_setInterval.swf

flaファイル

[ads]

Mac で Windows を動かすなら VMware Fusion
アメリカン・エキスプレス・カード ご入会キャンペーン実施中

カテゴリ:

トラックバック(0)

トラックバックURL: http://www.0yen-coding.com/mt-tb.cgi/229

コメントする

あわせて読みたいブログパーツ