Flash を実行してから経過した時間を調べる
サンプルをダウンロード
■Flashを実行してから経過した時間を調べる
Flashを実行してから経過した時間を調べるには、getTimer() メソッドを使用します。経過時間を(単位:ミリ秒)で返します。
SWF ファイルを開いた瞬間から経過した時間を取得
var time = getTimer();
■ストップウォッチを表現する
getTimer() メソッドは、swf ファイルの実行を開始してから経過した時間を調べる事ができますが、このメソッドを使うとストップウオッチの計算をする事も可能です。
1.測定を開始する
まず、測定を開始したい時点の getTimer() メソッドで得られる時間を変数 time に格納します。
測定を開始するタイミングで現在の経過時間を変数に格納
var time = getTimer();
2.測定中の経過時間を調べる
後は、現在の getTimer() と 変数 time との差を調べると、測定中の時間がわかります。
測定中に経過している時間
var time = getTimer();
stage.addEventListener(Event.ENTER_FRAME,function(event){
trace(getTimer() - time);
});
ローカル時間を取得する
サンプルをダウンロード
■ローカル時間を取得する
まず Date クラスをインスタンス化します。引数を省略すると、ユーザーのローカルの時間を取得することができます。
Date オブジェクトを作成する
var date : Date = new Date();
■西暦を取得する
fullYear プロパティから取得します。 4 桁の西暦で取得できます。
西暦を取得する
var date = new Date();
trace(date.fullYear);
■月を取得する
month プロパティから取得します。0 から始まる 11 までの数値が取得できるので +1 して使用します。
月を取得する
var date = new Date();
trace(date.month + 1);
■日を取得する
date プロパティから取得します。1 から始まる 31 までの数値を取得できます。
日を取得する
var date = new Date();
trace(date.date);
■曜日を取得する
day プロパティから取得します。0 から始まる 6 までの数値が取得できるので、曜日名称を配列に入れておいて使うといいでしょう。
曜日を取得する
var date = new Date();
var ary = ["日","月","火","水","木","金","土"];
trace(ary[date.day]);
■時間を取得する
hours プロパティから取得します。0 から始まる 23 までの数値が取得できます。
時間を取得する
var date = new Date();
trace(date.hours);
■分を取得する
minutes プロパティから取得します。0 から始まる 59 までの数値が取得できます。
分を取得する
var date = new Date();
trace(date.minutes);
■秒を取得する
seconds プロパティから取得します。0 から始まる 59 までの数値が取得できます。
秒を取得する
var date = new Date();
trace(date.seconds);
■ミリ秒を取得する
milliseconds プロパティから取得します。0 から始まる 999 までの数値が取得できます。
ミリ秒を取得する
var date = new Date();
trace(date.milliseconds);
デジタル時計を作ってみる
サンプルをダウンロード
■デジタル時計を作ってみる
ローカル時間を取得するで得られる日付や時間などの情報を、文字列として結合しテキストフィールドに表示します。
テキストフィールドにデジタル時計を表示する
var text_field = new TextField();
stage.addChild(text_field);
text_field.width = 200;
text_field.height = 20;
// 曜日データ
var ary = ["日","月","火","水","木","金","土"];
addEventListener(Event.ENTER_FRAME,function(event){
// ローカル時間を取得
var date = new Date();
// ローカル時間で取得可能パラメータを文字として連結
var str = "";
str += (date.fullYear < 10 ? "0" : "") + date.fullYear;
str += "/";
var month = date.month + 1;
str += (month < 10 ? "0" : "") + month;
str += "/";
str += (date.date < 10 ? "0" : "") + date.date;
str += " ";
str += "(" + ary[date.day] + ")";
str += " ";
str += (date.hours < 10 ? "0" : "") + date.hours;
str += ":";
str += (date.minutes < 10 ? "0" : "") + date.minutes;
str += ":";
str += (date.seconds < 10 ? "0" : "") + date.seconds;
str += ":";
str += (date.milliseconds < 100 ? "0" : "") + (date.milliseconds < 10 ? "0" : "") + date.milliseconds;
text_field.text = str;
});
■『日付 + 時刻』を取得する
toString() メソッドから取得します。
『日付 + 時刻』を取得する
var date = new Date();
trace(date.toString());
■『日付 + 時刻』をロケール表記で取得する
toLocaleString() メソッドから取得します。
『日付 + 時刻』をロケール表記で取得する
var date = new Date();
trace(date.toLocaleString());
■『日付』を取得する
toDateString() メソッドから取得します。
『日付』を取得する
var date = new Date();
trace(date.toDateString());
■『日付』をロケール表記で取得する
toLocaleDateString() メソッドから取得します。
『日付』をロケール表記で取得する
var date = new Date();
trace(date.toLocaleDateString());
■『時刻』を取得する
toTimeString() メソッドから取得します。
『時刻』を取得する
var date = new Date();
trace(date.toTimeString());
■『時刻』をロケール表記で取得する
toLocaleTimeString() メソッドから取得します。
『時刻』をロケール表記で取得する
var date = new Date();
trace(date.toLocaleTimeString());
■『UTC 時刻』を取得する
toUTCString() メソッドから取得します。
『UTC 時刻』を取得する
var date = new Date();
trace(date.toUTCString());
アナログ時計を作ってみる
サンプルをダウンロード
■針用ムービークリップを作成する
上方向に針が向いているムービークリップを3つ用意します。
短針用ムービークリップを "tansin"
長針用ムービークリップを "tyousin"
秒針用ムービークリップを "byousin"
とします。
短針用ムービークリップを "tansin"
長針用ムービークリップを "tyousin"
秒針用ムービークリップを "byousin"
とします。
■秒針の角度
seconds プロパティから秒を取得して 60 で割り 0.0 ~ 1.0 の大きさにします。 360 度を掛けて角度とします。
秒針の角度
var date = new Date();
byousin.rotation = date.seconds / 60 * 360;
■長針の角度
minutes プロパティから分を取得して 60 で割り 0.0 ~ 1.0 の大きさにします。 360 度を掛けて角度とします。
長針の角度
var date = new Date();
tyousin.rotation = date.minutes / 60 * 360;
■短針の角度
hours プロパティから時間を取得して 24 で割り 0.0 ~ 1.0 の大きさにします。
短針は 1 日 2 週するので 720 度を掛けて角度とします。
さらに minutes プロパティから分を取得して 60 で割り 0.0 ~ 1.0 の大きさにします。
短針は 1 時間に 30 度回転するので 30 度を掛けて角度に加算します。
短針の角度
var date = new Date();
tansin.rotation = date.hours / 24 * 720 + date.minutes / 60 * 30;

