トップへ戻るニュースフォーラムFLASH-ML 過去ログBak@Flaダウンロードよくある質問と答
ログイン
ユーザ名:

パスワード:


パスワード紛失

新規登録
メインメニュー
メイン
   迷える子羊の部屋【初心者専用】
     画像をトランジション表示した後、ムービーを続けたい
投稿するにはまず登録を

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
naofox
Åê¹ÆNo.41127
投稿日時: 2008-12-28 19:15
新米
居住地: 大阪
投稿: 8
使用環境:
MacOS10.5.6 , Flash8Pro
画像をトランジション表示した後、ムービーを続けたい
かなり古いものですが、、
http://www.mdn.co.jp/webcre/Volume/Vol31/Special/

こちらのサイトの中の
09 Flashでつくるトランジション効果
その4
のようなトランジションを行いたいのですが、
サンプルのように、クリックしたら次の画像をトランジション表示するのではなく
swfを読み込んだら、1つの画像をトランジション表示させ
そのまま次のフレームへとタイムラインベースのムービーを続けたいのですが、
トランジションが終わるとムービーがstopしてしまいます。

クリック等をせずに、ムービーを次のフレームに移行させるには、どのようにすればよいのでしょうか。。
以下のスクリプト(やろうとしている事に必要ないと思っている所は//を入れています)の最後にstop();があるから止まると想像しているのですが、
nextFrame();に変更すると、トランジションもせずムービーは止まったままになります。

1つ目の画像をトランジション表示した後、単純に次のタイムラインに続けて進めたいのですが、
どのようにすればよいのかお教え頂けませんでしょうか。

asを理解していない者の、かなり初歩的な質問かと思いますがどうぞ宜しくお願いいたします。
ちなみに環境は、Mac OS10.5 Flash8です。



function showPhoto() {
xorg = 1000000;
mask._width = xorg;
mask._x = 0;
mask.image._x = 0;
mask._visible = true;
v = 5;
nv = 0;
this.onEnterFrame = function() {
v *= 1.03;//移動を徐々に速く
nv += v;
mask._x = nv;//マスクを右へ
mask.image._x = -nv;//マスク内の画像を左へ
mask._xscale = (xorg/nv);//スケールの調整
if (mask._x>=920) {//終了
mask._visible = false;
this.enabled = true;
//this.onEnterFrame = null;
}
};
}
//
//page = 1;//現在のページ
//pageMax = 2;//ページの最大数
//
//this.onRelease = function() {
this.onEnterFrame = function() {
//this.enabled = false;
//page++;
//if (page>pageMax) page = 1;
//bg.gotoAndStop(page);//背景の画像を次へ
//mask.image.gotoAndStop(page);//マスクの画像を次へ
showPhoto();
};
stop();


joyko
Åê¹ÆNo.41128
投稿日時: 2008-12-28 20:25
常連
居住地: 埼玉県
投稿: 167
使用環境:
WinXP(SP3)
Flash8 Basic
FlashCS3
Flash CS4
Re: 画像をトランジション表示した後、ムービーを続けたい
ライブラリー内のmainをシンボル編集画面で開き、this.onRelease=function(){
}
の代わりを、自動的に行えば言い訳ですから、
ロード時にshowPhoto();が効くように、

1)showPhoto();を追記し、

function showPhoto() {
?略から
}
showPhoto();//追記分、ロード時に効かせ、

2)this.onRelease=function(){ }の代わりに、関数を設置し、

function Next() {//追記分、Next()は任意名
//this.enabled = false;
page++;
if (page>pageMax) page = 1;
bg.gotoAndStop(page);//背景の画像を次へ
mask.image.gotoAndStop(page);//マスクの画像を次へ
showPhoto();
};
stop();

setInterval(Next,5000);//追記分、5秒間隔で、Next();を呼び出す。何秒にするかは、バランスの中で、お好きなように決めて下さい。

でどうでしょうか?
naofox
Åê¹ÆNo.41129
投稿日時: 2008-12-29 12:27
新米
居住地: 大阪
投稿: 8
使用環境:
MacOS10.5.6 , Flash8Pro
Re: 画像をトランジション表示した後、ムービーを続けたい
joykoさま、早速のご返答ありがとうございます。
詳しく説明も書いて頂いて勉強になります。

お教え頂いたように、
this.onRelease=function(){ }の部分の代わりに

showPhoto();//追記分、ロード時に効かせ、
function Next() {//追記分、Next()は任意名
~中略~
};
stop();
setInterval(Next,5000);//

と書き換え、自動で2つの画像を再生するようにはなったのですが、
やりたい事としては、
1)1つ目の画像をサンプルのようにトランジション表示させる
(サンプル中のimageシンボルの2フレーム目は削除)
2)続いて、2つ目以降の画像はクロスフェードとかでスライドショー的に表示していく。
と考えています。

asでの制御に慣れていないので、2つ目以降は_rootのタイムライン上の3フレーム以降に加えていって、画像スライドショーが出来ないかなと思っているのですが、どのように記述すれば、トランジション表示した後_rootの3フレームへと進めていけるのでしょうか。
それとも2つ目以降を_root上に加えるのが間違っているのでしょうか

分かりにくい説明で、何度も恐縮ですが
どうぞ宜しくお願いいたします。
joyko
Åê¹ÆNo.41130
投稿日時: 2008-12-29 15:39
常連
居住地: 埼玉県
投稿: 167
使用環境:
WinXP(SP3)
Flash8 Basic
FlashCS3
Flash CS4
Re: 画像をトランジション表示した後、ムービーを続けたい
naofoxさん、
JPGを2枚追加して、合計4枚のJPGを使い、最初のJPGは、サンプル通り、transitionさせ、2枚目以降は、モーションツインとアルファ値を使って、クロスフェードさせました。

1)ライブラリー内のMovieClipである、imageをシンボル編集画面で開き、2枚追加して、全て、MovieClip化し、
タイムライン方式でクロスフェードさせる通常の方法で(この方法は、色々な教科書に記載がありますので、省略します)、配置します。その時、各MovieClipがタイムライン上で、始動するラベルに、ラベル名を、photo1、photo2、photo3、photo4としました。

2)ライブラリー内の、MoveiClipである、mainをシンボル編集画面で、開き、

//ここから
function showPhoto() {
xorg = 1000000;
mask._width = xorg;
mask._x = 0;
mask.image._x = 0;
mask._visible = true;
v = 6;
nv = 0;
this.onEnterFrame = function() {
v *= 1.02;//移動を徐々に速く
nv += v;
mask._x = nv;//マスクを右へ
mask.image._x = -nv;//マスク内の画像を左へ
mask._xscale = (xorg/nv);//スケールの調整
if (mask._x>=600) {//終了
bg.gotoAndPlay("photo2");//終了時、2枚目のMCに移動してPlayさせる。後は、タイムラインに従って、次々と、MCが再生されます
mask._visible = false;
//this.enabled = true;
this.onEnterFrame = null;
}
};
}
showPhoto();
//以前記載していた、scriptは不要となります。
//ここまで

以上で、いかがでしょうか?
naofox
Åê¹ÆNo.41131
投稿日時: 2008-12-29 19:04
新米
居住地: 大阪
投稿: 8
使用環境:
MacOS10.5.6 , Flash8Pro
Re: 画像をトランジション表示した後、ムービーを続けたい
joykoさま、ありがとうございます。

imageシンボル上に2つめ以降を配置し
bg.gotoAndPlay("photo2");
とすれば良かったんですね。

おかげさまで、思ったとおりの事が出来ました!
何度もご丁寧にありがとうございました。
感謝しております。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ

投稿するにはまず登録を
 
Copyright (C) 2003 FLASH-japan. All rights reserved.
Powered by Xoops