重要なお知らせ: このブログの更新は終了しました!詳しくはこちら "ブログ移転しました。" をご覧ください。

Flash:AS3:_rootのプロパティを参照したい(_root._xmoue、_root._ymoueとかを知りたい)


で、AS3では _root は無くなったので
どこで取得か。

ActionScript 2.0 Migration
http://livedocs.macromedia.com/labs/as3preview/langref/migration.html
をみてみると
_root は、flash.display.DisplayObject.stageとのことで
_xmoue,_ymoueはmouseX,mouseYになったので

で、MovieClip内での記述なら、MovieClipやSpriteはDisplayObjectを継承しているので

this.stage.mouseX
this.stage.mouseY

でいける!

でなんだけど、
その旧レベルでいうところの_rootに

var tempStr = “hogahoga”;

って書いておいて

this.stage.tempStr

で取得できんもんかとおもってtraceしてみたけど

trace(this.stage.tempStr);

「 flash.display.Stage にプロパティ testStr が見つからず、デフォルト値もありません。 」
って怒られてしまったorz。

なっとくはいくけどなっとくいかない。

flashVarsの取得は簡単にいかんものか

と調べていたら
Using FlashVars with ActionScript 3.0
http://blogs.adobe.com/pdehaan/2006/07/using_flashvars_with_actionscr.html

_rootに立てた変数などには
flash.display.DisplayObject.rootから参照できるようだ!

ということでこう

trace(this.root.tempStr);

FlashVars の値は

flash.display.DisplayObject.root.loaderInfo

ここで取得できるようだ。なのでこう

this.root.loaderInfo

root.loaderInfoがなんともよくわらかん

コメントをどうぞ