- 2010-12-16 (木) 19:00
- as3
フラッシュ(AS3使用)でイメージを一定期間止めておきたい。
本来は、全てスクリプトで制御できればいいのだとは思うが、
イメージ2-3枚だし、そんなさくさくスクリプトかけないし…(汗)
ということで、タイムラインにアクション埋めてやりすごす作戦です。
その過程を忘れないようにメモします。
アニメーションが終わってしばらく静止しておきたい場合、
タイムラインを伸ばせばいいのだが、複数イメージを同じように(同じ秒数停止)扱いたい場合、秒数が多くなると調整が大変!ということを解決したくas3の旅にでました。
今回はTimerを使って実現させてみました。
1フレーム目
function xTimer():void {
var myTimer:Timer = new Timer(5000, 1); //繰返す間隔(5s),回数(1回,デフォルトは0(0は無限))
myTimer.addEventListener(TimerEvent.TIMER, timerHandler);
myTimer.start();
function timerHandler(evt:TimerEvent):void {
play();
}
}
アニメーション最後の静止しておきたいフレーム
stop(); xTimer();
こんなかんじで実現できました。
さらに、繰り返しが終わった時になにかしたい場合は…
myTimer.addEventListener(TimerEvent.TIMER_COMPLETE, xComplete);
function xComplete(evt:TimerEvent):void {
trace("enjoy!");
}
こんなかんじ。
参考:ActionScript 3.0 コンポーネントリファレンスガイド Timer
そして、リンクもさせたい!!
ということで、これまたメモ。
下記をボタンを配置したはじめのフレームに記述
//ボタンのインスタンス名をmyImgに設定した場合
myImg.addEventListener(MouseEvent.CLICK, myImgClick);
function myImgClick (event:MouseEvent):void {
var url:URLRequest = new URLRequest("http://web.donnatokimo.com/");
navigateToURL( url,"_self" );
}
というかんじ。
勉強は忘れそうになったころに復習するといいらしいよ。
リンク方法とかすでに完全に忘れてしまってたけど…
次は忘れる前に復習しよう。そうしよう。がんばろう。
最後に、いろいろ調べているときに出会った記事が素敵なので紹介します。
【initialize】[AS3]Timerクラスで繰り返すで広末涼子の「大スキ!」をtraceさせているのですが、
こういうの、スキです。
見習います。
関連記事
コメント:1
- ****** 12-05-20 (日) 10:51
- このコメントは管理者の承認待ちです
トラックバック:0
- このエントリーのトラックバックURL
- http://web.donnatokimo.com/as3/536/trackback
- Listed below are links to weblogs that reference
- Flash(as3)でTimerを使って一定時間止める【Flash】【AS3.0】 from ウェブなとき。