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

パスワード:


パスワード紛失

新規登録
メインメニュー
メイン
   コーダーズルーム【スクリプト系】
     tweenクラスのターゲットへのアクセス
投稿するにはまず登録を

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
MiyakoU
Åê¹ÆNo.38557
投稿日時: 2008-4-24 23:08
半人前
居住地: 大阪
投稿: 30
使用環境:
MacOS10.4.9,Flash8
tweenクラスのターゲットへのアクセス

tweenクラスに関する質問です。
以下のようなソースがある場合、


//トゥイーンを生成

var myTween:Tween = new Tween( obj:Object, prop:String, func:Function, begin:Number, finish:Number, duration:Number, useSeconds:Boolean );

//トゥイーン終了後
myTween.onMotionFinished=function(){
 ※1
}


※1の部分で、ターゲット(obj)のパスを取得したい場合、
一番簡単に値にアクセスできる方法をご存知の方は教えていただきたいのですが…。

何卒よろしくお願いいたします
ひろゆき
Åê¹ÆNo.38558
投稿日時: 2008-4-24 23:34
ちょんまげら
居住地: 東京砂漠
投稿: 4403
使用環境:
10.8.5

Flash Professional CS4/CS6/CC

Safari 6.1
Re: tweenクラスのターゲットへのアクセス
妙に難しく考えているような気がしますが。

また、挙げられたスクリプトでは動かないように思います。

仮に、_root 上に、ムービークリップ(インスタンス名: target_mc) があるとして。

_root 第1フレームに
import mx.transitions.Tween;
import mx.transitions.easing.*;

var myTween:Tween = new Tween(target_mc, "_x", Regular.easeIn, 0, 100, 2, false);
myTween.onMotionFinished = function():Void {
	trace(target_mc);
};
でいいのでは?

どうしても、objを取り出したいのであれば、そのまま
myTween.onMotionFinished = function():Void {
	trace(this.obj);
};


フレームが最後まで再生されたことを取得」は、放置されているようですが。

#ご自分が投稿された記事は、ログインして「アカウント情報」で確認できます。


----------------
質問する際は、回答者に具体的な情報を与えてください。

MiyakoU
Åê¹ÆNo.38559
投稿日時: 2008-4-25 9:52
半人前
居住地: 大阪
投稿: 30
使用環境:
MacOS10.4.9,Flash8
Re: tweenクラスのターゲットへのアクセス
さっそくのご返答ありがとうございます。

_root 第1フレームではなく、flashの仕組みの都合上、
違う階層の第2フレームに記述しています。

ただ、違う階層の第2フレームで以下のようなソースを記述すると、トレースの結果が
test1:undefinded
test2:undefinded
となってしまうのです…。


var myTween:Tween = new Tween(target_mc, "_x", Regular.easeIn, 0, 100, 2, false);
myTween.onMotionFinished = function():Void {
trace("test1:"+target_mc);
trace("test2:"+this.obj);
};



引用:

ひろゆきさんは書きました:

#ご自分が投稿された記事は、ログインして「アカウント情報」で確認できます。



申し訳ありません。本当に放置したままになっていました。追って上記のスレッドに対応させていただきます。
ひろゆき
Åê¹ÆNo.38561
投稿日時: 2008-4-25 10:01
ちょんまげら
居住地: 東京砂漠
投稿: 4403
使用環境:
10.8.5

Flash Professional CS4/CS6/CC

Safari 6.1
Re: tweenクラスのターゲットへのアクセス
引用:
MiyakoUさんは書きました:
_root 第1フレームではなく、flashの仕組みの都合上、
違う階層の第2フレームに記述しています。

ただ、違う階層の第2フレームで以下のようなソースを記述すると、トレースの結果が

記述されたスクリプトを具体的に示された方が良いでしょうし、
そのムービークリップの構造についても、説明を加える必要があるように思います。
そもそも、target_mc が undefined になるのに、target_mc が動くというのも変です。


例えば、_root の第1フレームのみに、target_mc が配置されている場合、
第2フレームに、
trace(target_mc);
と記述しても、undefined と出力されます。
これは、第2フレームに存在していないものを参照しようとしているので、
当然の結果と言えます。


----------------
質問する際は、回答者に具体的な情報を与えてください。

MiyakoU
Åê¹ÆNo.38562
投稿日時: 2008-4-25 10:19
半人前
居住地: 大阪
投稿: 30
使用環境:
MacOS10.4.9,Flash8
Re: tweenクラスのターゲットへのアクセス
大変申し訳ありません。
ただいまtraceを確認していたところ、

forループで書き出していたため、

test1:undefinded

のところもあったのですが、
(↑これはご指摘のとおりオブジェクト自体が存在しなかったため)
ちゃんとしたパスで取得できていました。大変お騒がせ致しました…。

ただ、this.objやthis.propなどで、値を取得できることが新たにわかりましたので、勉強になりました。
もう少ししっかりとオブジェクトの概念を理解していきたいと思います。丁寧なご回答、どうもありがとうございました。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ

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