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

パスワード:


パスワード紛失

新規登録
メインメニュー
メイン
   迷える子羊の部屋【初心者専用】
     画像のスライドショーをさせたいです
投稿するにはまず登録を

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
m-yoshikaw
Åê¹ÆNo.50058
投稿日時: 2013-9-1 10:11
新米
居住地:
投稿: 2
使用環境:
Mac OSX10.8 ,flashCS4
画像のスライドショーをさせたいです
ムービークリップ( 名前はm4 )に画像を3つほど入ったものを
数秒ごとに移動させて表示させていくものを作っています。

m4があるレイヤー1には   
this.m4.setPos(utn._x,utn._y);

※utnはボタンでここを起点に座標の指示をしています
m4自体には
onClipEvent (load) {
	xPos = this._x;
	function setPos(a, b) {
		xPos = a
	}
}
onClipEvent (enterFrame) {
	this._x += (xPos-this._x)/8;
}


別のレイヤー2の1フレーム目に

var setIDName:Number = setTimeout(sample, 6000);
function sample():Void
{
	_root.m4.setPos(utn._x - 520,utn._y);
	gotoAndStop(2);
	trace("slide1");
	clearInterval();
}


レイヤー2の2フレーム目に

var setIDName:Number = setTimeout(sample, 12000);
function sample():Void
{
	_root.m4.setPos(utn._x - 1040,utn._y);
	gotoAndStop(3);
	trace("slide2");
	clearInterval();
}


レイヤー2の3フレーム目に
var setIDName:Number = setTimeout(sample, 18000);
function sample():Void
{
	_root.m4.setPos(utn._x - 0,utn._y);
	gotoAndStop(1);
	trace("slide3");
	clearInterval();
}


と記述しています。
これでプレビューをみると、一周目は6秒ごとに切り替わっていくのですが
二週目となると、とても遅くなってしまいます
( 本来の指定したミリ秒だとおもいますが、、、、)
各3フレームのインターバル時間を6000にすると、m4が真ん中の画像を通り越して三枚目の画像まで行ってしまいます。

二週目以降も3週目4週目と同じ秒数で表示の切り替えを無限にしたいのですが
お力添え願えませんでしょうか?
野中文雄
Åê¹ÆNo.50059
投稿日時: 2013-9-2 13:32
ちょんまげら
居住地: 東京
投稿: 4531
使用環境:
CS5.5 .6.8 Vista Home Premium (SP1)
Re: 画像のスライドショーをさせたいです
まず、setTimeout()関数で定めたコールバックの呼出しをなくすのはclearTimeout()関数で、引数には識別番号の整数を渡さなければなりません。つまり、同じコールバックを繰返しsetTimeout()関数で加えたままになっていると考えられます。

つぎに、フレームアクションでそのフレームに対する処理をしている途中で、他のフレームにスクリプトの制御をMovieClip.gotoAndStop()メソッドで移すとよからぬことがたびたび起こります(「gotoAndPlayで再生する場合としない場合がある」参照)。処理の最後に移動すべきでしょう。

最後に、(フレームやレイヤーが異なっても)同じタイムラインに同名の変数や関数を定めると、ActionScript 3.0では意図したとおりに動きせん。今のうちに改めることをお勧めします。
var setIDName:Number = setTimeout(sample, 6000);
function sample():Void
{
	_root.m4.setPos(utn._x - 520,utn._y);
	gotoAndStop(2);
	trace("slide1");
	clearInterval();
}

引用:
m-yoshikawさんは書きました:
これでプレビューをみると、一周目は6秒ごとに切り替わっていくのですが
二週目となると、とても遅くなってしまいます
( 本来の指定したミリ秒だとおもいますが、、、、)
各3フレームのインターバル時間を6000にすると、m4が真ん中の画像を通り越して三枚目の画像まで行ってしまいます。


----------------
 

m-yoshikaw
Åê¹ÆNo.50062
投稿日時: 2013-9-3 13:27
新米
居住地:
投稿: 2
使用環境:
Mac OSX10.8 ,flashCS4
返信有難うございます
Fumio様、返信有難うございます。
教えて頂いた内容とリンク先の内容を見ながら
今一度改めてやり直してみます。
有難うございました!
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ

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