2010-09-02 23 views
0

我试图访问我已经放在舞台上(在影片剪辑内)但没有运气的文本输入。如何从文档类访问舞台上的动态文本字段

我已经为这个动态文本字段是currentUserCount定义的实例名称

我有这样的事情在文档类ActionScript文件设置:

package { 

    import flash.events.Event; 
    import flash.net.URLLoader; 
    import flash.net.URLRequest; 
    import flash.display.Sprite; 
    import flash.display.DisplayObject; 
    import flash.display.MovieClip; 
    import flash.display.Stage; 
    import flash.text.TextField; 
    import flash.text.TextFieldAutoSize; 
    import flash.text.TextFormat; 

    public class myProject extends Sprite { 

     public function myProject() { 
      // Trying stuff like 
      trace(currentUserCount); 
      trace(movieClipName.currentUserCount); 
      trace(root.currentUserCount); 
     } 
    } 
} 

我在想什么?

当我运行此我得到:

1120: Access of undefined property currentUserCount. 
1120: Access of undefined property movieClipName. 
1119: Access of possibly undefined property movieClipName through a reference with static type flash.display:DisplayObject. 
1120: Access of undefined property currentUserCount. 
+1

您是否收到任何编译器错误?跟踪movieClipName时会发生什么? – 2010-09-02 18:48:03

+0

我已经添加了编译器输出 – arnorhs 2010-09-02 18:56:17

+0

没有看到.fla,很难得到一个好主意,但我的猜测是movieclip没有实例名称。 – 2010-09-02 19:06:13

回答

1

如果所有舞台上的影片剪辑的有它的内部同嵌套的剪辑,也可以只参考像这样的内部剪辑:

for (var i=0; i<stage.numChildren; i++){ 
    var mc = stage.getChildAt(i) 
    mc.subClip.play() 
} 
0

确保影片剪辑和文本字段在你的FLA文件实例名称。

// MovieClip instance name: mc; 
// Textfield instance name: tf; 
在你的文档类

然后:

package { 

    import flash.events.Event; 
    import flash.net.URLLoader; 
    import flash.net.URLRequest; 
    import flash.display.Sprite; 
    import flash.display.DisplayObject; 
    import flash.display.MovieClip; 
    import flash.display.Stage; 
    import flash.text.TextField; 
    import flash.text.TextFieldAutoSize; 
    import flash.text.TextFormat; 

    public class myProject extends Sprite { 

     public function myProject() { 
      mc.tf.text = "Text you wanna see"; 
      trace(mc.tf); // [Object TextField] 
     } 
    } 
} 
0

我的问题是,我是一个影片剪辑中引用影片剪辑,我不知道我必须为每一个创建一个实例名称并通过每一个代码工作我的方式。

我认为实例名称是全局命名空间的一部分。

所以我做这样的事情:

myMovieClip.play(); 

时,我应该做的事情:

mainMovieClip.subMovieClip.myMovieClip.play();