ホーム > タグ > as3

as3

ActionScript3.0でボタンにリンクを貼る方法【Flash】【AS3.0】

  • 2010-12-17 (金)
  • as3

さっそく、リンクを設定する方法を復習する。
各イメージのはじめのフレームにラベルp1,p2をつける。
リンク先とself or blankを配列に。
枚数増えても使えるだろう…。

1フレーム目(init)

var nowPageNum:uint;//表示ページナンバー
var newImg:SimpleButton;
nowPageNum = 1;
newImg = img1;
//URL
var urllist:Array = ["category/as3","http://web.donnatokimo.com/"];
var urltype:Array = [0,1];//1=blank,0=self
//イメージクリック時イベント処理
newImg.addEventListener(MouseEvent.CLICK, newImgClick);
//イメージリンク
var newImgLink:String = urllist[nowPageNum-1];
//イメージリンクイベントハンドラ
function newImgClick (event:MouseEvent ) :void{
 // URLRequestを設定
 var url:URLRequest = new URLRequest(newImgLink);
 // 実際にページに飛ぶ
 var linktype:uint = urltype[nowPageNum-1];
 if (linktype == 0){
   navigateToURL( url,"_self" );
  }else if (linktype == 1){
   navigateToURL( url,"_blank" );
  }
}

p1

nowPageNum = 1;
newImg = img1;

p2

nowPageNum = 2;
newImg = img2;

ラストフレーム

gotoAndPlay("p1");

ちなみに、前の記事でもかいたけど…
画像ボタンそれぞれにアクションをつける場合の設定方法をおさらい。
下記をボタンを配置したはじめのフレームに記述

//ボタンのインスタンス名をmyImgに設定した場合
myImg.addEventListener(MouseEvent.CLICK, myImgClick);
function myImgClick (event:MouseEvent):void {
 var url:URLRequest = new URLRequest("http://web.donnatokimo.com/");
 navigateToURL( url,"_self" );
}

Flash(as3)でTimerを使って一定時間止める【Flash】【AS3.0】

  • 2010-12-16 (木)
  • 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させているのですが、
こういうの、スキです。
見習います。

flvをループ再生させる方法【Flash】【AS3.0】

  • 2010-11-22 (月)
  • as3

まずは、ビデオを読み込む。
ファイル > 読み込み > ビデオの読み込み で読み込む。(もしくは、flvなどを直接ドラッグ)
パラメータのsourceで再生する動画を選択する。

このままではループはしないのでFLVPlaybackにプロパティ > インスタンス名で任意の名前をつける。

インスタンス名にspecialmovieとつけた場合、以下を記述

//ループ処理
specialmovie.addEventListener(Event.COMPLETE,replay);
function replay(event) {
    specialmovie.play();
}

これでOK。

【参考】
http://oshiete.goo.ne.jp/qa/5390617.html

Home > タグ > as3

want

Return to page top