このflash講座1234は,flashソフトを用いてflashアニメをスクリプトで制作し無料で公開したものです

FLASH講座 ーケータイ(携帯) de FLASHー
携帯編
(3) FlashLite2.0 でスライドショー

 今回のflash講座は、画像の外部ファイルをボタン操作で順番に表示させるタイプのスライドショーです。

 Flash自体に写真を読み込むタイプだと、何枚もの写真を見せるにはファイルサイズが大きくなり、特に携帯では重くなりすぎてしまいます。 そこで、外部ファイルを読み込み表示させた後ボタン操作で、次のファイルを読み込む方式にしました。 このようなことを、FlashLite1.1でやるときのスクリプトが分からないので、今回もFlashLite2.0対応としました。※(4)「FlashLite1.1でスライドショー」を参照下さい。

 外部ファイルの枚数が何枚あろうとも(連番で)、最後の画像表示が終わったら、1枚目に戻って再生できるようにスクリプトを書き上げ、FLashLite2.0でパブリッシュできた(スタンドアローンのプレビューではうまく再生できた)が、実際に携帯(SoftBank 811SH) で再生してみると、最後の画像表示の後、次のスライドの表示でエラーが発生します。 そこで、枚数を指定するタイプのスクリプトを掲げますが、せっかく作ったことだし、他の機種ではうまくいくかもしれないので、これについても掲載することにします。 なお、このスクリプトは、PCWebページ向けにも、もちろん使えます。
SAMPLE
左のSAMPLEは、FLASH7でパブリッシュしたものを表示している。
FlashLite2.0の場合から、FSコマンドを取り除いただけであるが、スライド切替ボタンを見えるようにしてある(携帯向けは表示されない)。
この場合、切替ボタンは写真表示で隠れてしまうが、ボタンのあるところをクリックすると切り替えられる。

携帯用SAMPLE(swfファイル)は、flash講座 de syanari にあります。
      flashede.syanari.comのQR-Code
 ここでは、外部ファイルはサーバーにおいてあるのが表示されるようになっているが、自分の携帯にSWFファイルを置いて再生するためには、外部ファイルを携帯においておかなければならない(この場合は同じフォルダに)。
外部ファイルと写真(連番でpic1,pic2,,,,,,,)を携帯に保存するのは
811SHの場合、PCと繋いで、その他フォルダ(メモリーカードでも可)に保存すればOKだ。 というより、この方法しかできなかった。 ダウンロードで保存しようとすると、swfファイルは自動的に@flashフォルダに入れられてしまうので、jpgファイルと共存できないようだ。 scriptで携帯内フォルダへのパスの渡し方がわからないので、「その他ファイル」フォルダを使った。
ステージの準備(サイズ:300×400、背景色:#999999、12FPS)
パブリッシュ設定は、(1)デジタル時計で記述したとおり。
ステージの準備
●スライド切替ボタン:ステージに適当な大きさの矩形を描き、シンボル(ムービークリップ)に変換し、インスタンス名をbtnとする。 アルファを0に設定し、画面から見えないようにする。
●ダイナミックテキストで、「Photo Album」、「中心の決定ボタンで切り替わります」と書き、それぞれのボックスのインスタンス名をtBox1、tBox2とする。 もちろん、これらの文言は、ふさわしいものに変えてよい。
FlashLite2.0用スクリプト
fscommand2("FullScreen", true);
_focusrect = false;
pic_num = 6;
load_mc = _root.createEmptyMovieClip("load_mc", 1);
var mcLoader:MovieClipLoader = new MovieClipLoader();
var num=0;
btn.onRelease = function() {
  tBox1.text=tBox2.text="";
  num++;
  if (num == pic_num+1) {
    num = 1;
  }
  loadPic(num);
};
function loadPic(num) {
  $jpg = "pic"+num+".jpg";
  mcLoader.loadClip($jpg, load_mc);
}
var focusListener:Object = new Object();
Selection.addListener(focusListener);
Selection.setFocus(btn);

フォーカスがあたったときの黄色い線非表示
写真の枚数
load_mc(MovieClip)の作成
mcLoader(MovieClipLoader)の作成
変数numを0に
btn(携帯電話の決定ボタン)が押されたら
文言を消す
numに1を足す
もし、numがpic_num+1なら
numを1に戻す

loadPicを実施(写真の表示)


関数loadPic
何番目の写真か
load_mcに写真をロード


フォーカスリスナーオブジェクトの定義
リスナーに追加定義
btrnに最初のフォーカスをセット
このリスナーのセットは、再生開始時にフォーカスがbtnに当たるようにしていて、下向きボタンを一度押す手間を省き操作をわかりやすくしている)
念のため記載しておくスクリプト(写真枚数を限定しないケース)
fscommand2("FullScreen", true);
load_mc = _root.createEmptyMovieClip("load_mc", 1);
var mcLoader:MovieClipLoader = new MovieClipLoader();
var oListener:Object=new Object();
var num=0;
btn.onRelease = function() {
  tBox1.text=tBox2.text="";
  num++;
  oListener.onLoadError=function() {
    pic_num=num;
    num=1;
    loadPic(num);
  }
  mcLoader.addListener(oListener);   
  loadPic(num);
};
function loadPic(num) {
    $jpg = "pic"+num+".jpg";
    mcLoader.loadClip($jpg, load_mc);
}
var focusListener:Object = new Object();
Selection.addListener(focusListener);
Selection.setFocus(btn);








ロードエラー(ファイル不在)があったら
その番号を記憶
numを1に戻す



mcLoaderにリスナー(oListener)を定義

注)このリスナーを使ったスクリプトは、flashplayerではうまく作動するが、SoftBank 811SHでは、本体のほうが早くエラー処理を行うらしく、このスクリプトのエラー処理が間に合わないようだ。
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 このサイトで使用しましたflashソフトはflash mx 2004年版(Flash Japan)- flash8 及び FlashCS3-2007年版です。
 flash講座(フラッシュ講座)は、Yoshioka氏(通称、ひげ親父)による制作です。 コツコツと作られたflash素材(flashアニメ、スクリプト)はユーザーの方により保存変更され動画flash(動画フラッシュ)や携帯flash(待受flash)として利用されて来ました。
 氏は、flashスクリプトについての学習を、パソコン塾講師活躍中に始められ、独立した今も続けておられます。 
  macromedia flashソフトは新しくadobe flash時代に入りましたので、これを機会にflash学習サイトを「flash講座1234」としてリニューアルいたしました。 引き続きご愛顧承りますよう、よろしくお願いいたします。                                                                           (by Hiraoka)
HOME   Flash講座総リスト   ケータイ de FLASH 携帯編(4)