Flash as3 在类中使用stage和addChild方法

stage和addChild一般不能在类中直接使用。出了下面几种情形:

1、在文档类中可以直接使用。所谓文档类,并非真的有文档类这样一种Class,而是在Flash中指定了某一个类作为Flash的启动类。Flash编译器会自动调用该类的构造函数。这有点类似于C语言中的Main函数,所以许多人在编写文档类时,喜欢起名为Main。

文档类设置.jpg

2、继承自flash.display.DisplayObject的类的实例,如果被加入到舞台(addChild)后,可以通过属性stage取得所在舞台的实例。

例如:

import flash.text.TextField;

var tf1:TextField = new TextField();
tf1.text = "Text Field 1";
tf1.border = true;
tf1.x = 10;
addChild(tf1);
tf1.width = tf1.stage.stageWidth / 2 - 10;

var tf2:TextField = new TextField();
tf2.text = "Text Field 2";
tf2.border = true;
tf2.x = tf1.x + tf1.width + 5;
addChild(tf2);
tf2.width = tf2.stage.stageWidth / 2 - 10;

trace(stage.stageWidth);

来源:http://www.adobe.com/livedocs/flash/9.0/ActionScriptLangRefV3/flash/display/DisplayObject.html

3、在时间轴上或者文档类中,将stage对象直接传递给方法。这样就可以在方法内直接调用传递进来的stage对象了。

本文首发:剑锋博客 尊重作者,请保留链接。

分享到: 更多

给我留言(您的留言,是对我最好的鼓励!

公告栏

  • 姓名:林剑锋(不见不散)
  • 来自:中国-广州
  • 简介:潮汕人,出生于广东揭西。醉心于Web开发8年,挑战了一年整体策划和网站运营。目前就职于平成混媒IT部。
  • Email/QQ:admin@ljf.cn

QQ群:设计学院 68075618,网站设计师 9908776

统计

文章:335篇
评论:163条 (2条Spam)
相册:1个 (120张图片)
主题:Nagrand新主题

www.ljf.cn网站PR查询