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

パスワード:


パスワード紛失

新規登録
メインメニュー
メイン
   ActionScript 3.0 特設会議室
     MovieClipあるいはSpriteのルートからのパスを調べるには。
投稿するにはまず登録を

スレッド表示 | 古いものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
dadada
Åê¹ÆNo.37466
投稿日時: 2008-2-4 21:47
新米
居住地: 東京
投稿: 18
使用環境:
XP
Flash CS3
Re: MovieClipあるいはSpriteのルートからのパスを調べるには。
ニノミヤ様

なるほど!
parentをひとつずつ辿っていって調べていくわけですね。
それをグローバル関数として持っておけば、
as2の時のようにお手軽にパスが調べられますね!
わざわざコードまで書いていただいてありがとうございます。
ニノミヤ カズノリ
Åê¹ÆNo.37465
投稿日時: 2008-2-4 18:30
職人
居住地: 東京
投稿: 430
使用環境:
CS4
.4.11, .5.7
XP Pro(sp3)
Flash Player 10,0,22,87,
AIR 1.5.1,
IE 5.5 & 6 & 7 & 8,
Firefox 2.0.0.20 & 3.0.11 & 3.5,
Opera 9.64,
Safari 4,
Google Chrome 2.0.172.31,
Netscape 7.1
Re: MovieClipあるいはSpriteのルートからのパスを調べるには。
作ってみてはどうでしょうか。

試しにAS2.0以前にあったtargetPath関数を真似て作ってみます。
targetPath.asを作って下記コードを入力して下さい。
package {
	import flash.display.DisplayObject;
	
	public function targetPath(target:DisplayObject):String {
		var path:String = target.name;
		var parentObject:DisplayObject = target.parent;
		
		while(parentObject != target.root) {
			path = parentObject.name + "." + path;
			parentObject = parentObject.parent;
		}
		
		return path;
	}
}

後はflaファイルを作成して、
同じディレクトリにasファイルを置いておけばtargetPathと同じ使い方でパスを取得出来ます。
AS3.0では_levelが無いのでその辺りは省いています。

あまりテストしていないので、正常に動くか怪しいです。
dadada
Åê¹ÆNo.37449
投稿日時: 2008-2-2 19:16
新米
居住地: 東京
投稿: 18
使用環境:
XP
Flash CS3
Re: MovieClipあるいはSpriteのルートからのパスを調べるには。
ニノミヤ様 返信ありがとうございます。

そういえば『オブジェクトのリストアップ』をすればパスを見ることができましたね。ありがとうございます。

ただ、パスを調べたいMovieClipだけをActionScriptで出力できたほうが、便利なケースもあると思うんです。
ActionScriptで対象のMovieClipだけを調べられる方法があったらいいのですけども。。。
ニノミヤ カズノリ
Åê¹ÆNo.37419
投稿日時: 2008-1-31 13:43
職人
居住地: 東京
投稿: 430
使用環境:
CS4
.4.11, .5.7
XP Pro(sp3)
Flash Player 10,0,22,87,
AIR 1.5.1,
IE 5.5 & 6 & 7 & 8,
Firefox 2.0.0.20 & 3.0.11 & 3.5,
Opera 9.64,
Safari 4,
Google Chrome 2.0.172.31,
Netscape 7.1
Re: MovieClipあるいはSpriteのルートからのパスを調べるには。
ActionScriptで調べたいのでしょうか?
『オブジェクトのリストアップ』すればパスは見れますが。
dadada
Åê¹ÆNo.37414
投稿日時: 2008-1-30 23:57
新米
居住地: 東京
投稿: 18
使用環境:
XP
Flash CS3
MovieClipあるいはSpriteのルートからのパスを調べるには。
MovieClipのルートからのパスを調べたい時、
as2でしたら、調べたいMovieClip内で、
trace(this);

と記述すればルートからのパスを出力してくれましたが、
as3でもルートからのパスを調べることはできるのでしょうか?

as3で
trace(this);

と記述すると、
[object シンボル名_1]
と出力されます。

また、
trace(this.name);

と記述すると、そのMovieClipのインスタンス名のみが出力されます。

何かいい方法はないのでしょうか?
スレッド表示 | 古いものから 前のトピック | 次のトピック | トップ

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