Flash/ActionScript

ストップウォッチ完全版にチャレンジ!(3ページ目)

ストップウォッチを作成します。長文のActionScriptにチャレンジし、オリジナルデザインのストップウォッチを作成してみましょう!

執筆者:渡辺 大介

スタート・ストップボタンを作成する

以下の部分ではスタート・ストップボタンを押したときの処理を指定しています。
startButton.onRelease = function(){
if(startFlag == false){
if(firstFlag == false){
_root.startTime = getTimer() - _root.dispBaseTime;
firstFlag = true;
}
_root.onEnterFrame = displayUpdate;
startFlag = true;
}else{
_root.onEnterFrame = null;
startFlag = false;
}
}
分解して見ていきましょう 。
startButton.onRelease = function(){ }
この部分はインスタンス「startButton」を押したときに{ }の処理を行うという意味です。今回はActionScriptをまとめて書きたかったのでボタンをムービークリップとし、この形式で記述しています。
if(startFlag == false){
if(firstFlag == false){ }
}else{ }
if文が二つ組み合わされています。「startFlag」というのは後に記述するスタートボタンが押された後かどうかを示す変数です。「false」の場合はまだスタートボタンを押していないので、以降の処理を実行します。
次の行では一時停止した後スタートボタンが押されたかどうかを示す変数「firstFlag」を判定しています。「false」の場合は新規に0からカウントアップする場合です。
_root.startTime = getTimer() - _root.dispBaseTime;
firstFlag = true;
「if(firstFlag == false){ }」内の処理です。1行目で変数「_root.startTime」でスタートボタンを押した時間を取得しています。
2行目でスタートボタンを押したことを判定する変数「firstFlag」に「true」を代入し、スタートボタンを一度以上押し、計測を開始たことを記録します。
_root.onEnterFrame = displayUpdate;
startFlag = true;
if文「if(firstFlag == false){ }」の後の処理を記述しています。
1行目で、先ほど記述した時間を表示する関数を呼び出しています。
2行目でスタートボタン押したことを記録しています。
_root.onEnterFrame = null;
startFlag = false;
if文「if(startFlag == false){ }」が否だった場合の処理です。既にスタートボタンが押されている場合に、ストップボタンとして機能するような処理になります。
1行目で実行している関数「_root.onEnterFrame = displayUpdate;」の実行を終了しています。
2行目でストップボタンを押し、計測を停止していることを記録します。

リセットボタンを作成する

以下の部分でリセットボタンの機能
resetButton.onRelease = function(){
_root.nowTime = 0
_root.startTime = 0;
_root.dispBaseTime=0;
_root.startFlag = false;
_root.firstFlag = false;

_root.onEnterFrame = null;
time.text = "00:00:00";
}
分解して見ていきましょう。
resetButton.onRelease = function(){ }
リセットボタンを押したとき{ }の処理を実行します。
	_root.nowTime = 0
_root.startTime = 0;
_root.dispBaseTime=0;
_root.startFlag = false;
_root.firstFlag = false;
計測に使用した変数をリセットします。
	_root.onEnterFrame = null;
リセットボタンを押したとき、計測中の場合を考え関数を停止しています。
 time.text = "00:00:00";
テキストボックス内の時間表示を初期化します。

完成したファイルをダウンロード


今回はFlashガイドサイト初の長文ActionScriptになりましたが、どうだったでしょうか。ストップウォッチは簡単そうに見える割に細かな処理の分岐が多く難しい課題です。
とは言っても、コピペすれば簡単に動きます!というと自虐的ですが、皆さんも秋の夜長を利用してオリジナルストップウォッチを作成してください。
【編集部おすすめの購入サイト】
楽天市場で Flash 関連の書籍を見るAmazon で Flash 関連の書籍を見る
  • 前のページへ
  • 1
  • 2
  • 3
※記事内容は執筆時点のものです。最新の内容をご確認ください。
※OSやアプリ、ソフトのバージョンによっては画面表示、操作方法が異なる可能性があります。

あわせて読みたい

あなたにオススメ

    表示について

    カテゴリー一覧

    All Aboutサービス・メディア

    All About公式SNS
    日々の生活や仕事を楽しむための情報を毎日お届けします。
    公式SNS一覧
    © All About, Inc. All rights reserved. 掲載の記事・写真・イラストなど、すべてのコンテンツの無断複写・転載・公衆送信等を禁じます