我想访问我放在舞台上的文本字段,实例名称texx
来自外部as3文件,带有代码。
package src
{
import flash.display.Stage;
import flash.display.MovieClip;
public class Global
{
public static var _stage:Stage;
public static var r:MovieClip = MovieClip(root);
}
public function Global()
{
r.texx.text = "some text"
}
}
}
因为你猜对了它没有显示我想要的文字。我搜索高低,但无法找到如何从包内的外部类访问阶段对象。任何帮助将不胜感激
答案 0 :(得分:0)
您无法从非显示类访问舞台实例,舞台没有静态获取其实例。唯一的方法是从视图类设置属性stage
,例如:
package src
{
import flash.display.Stage;
import flash.display.MovieClip;
public class Global
{
private static var _stage:Stage;
public static function set stage(value:Stage):void
{
if(stage != value)
{
_stage = value;
init();
}
}
public static function get stage():Stage
{
return _stage;
}
private static function init():void
{
stage.texx.text = "some text";
}
}
}
和文档类中的代码:
Global.stage = stage;
root
。
答案 1 :(得分:0)
通过在刚创建的影片剪辑中添加文本字段作为类对象来解决问题,给出影片剪辑(在其中是文本字段tex)类名src.texter
然后在类中
package src
{
import flash.display.Stage;
import flash.display.MovieClip;
import src.texter;
public class Global
{
public var texxx:texter = new texter;
public function Global()
{
addChild(texxx);
texxx.x = 336;
texxx.y = 330;
texxx.tex.text = "some text";
}
}