永发信息网

as3调用类的语句。

答案:3  悬赏:10  手机版
解决时间 2021-03-20 02:18
  • 提问者网友:风月客
  • 2021-03-19 19:12
as3调用类的语句。
最佳答案
  • 五星知识达人网友:行雁书
  • 2021-03-19 20:43
一般的时候,主场景调用外部类文件,最简单的操作就是绑定文档类。即在空白场景的属性栏里直接写这个要调用的类文件名称就是了。但是,你的这个类文件有问题,构造函数带有参数的,是不能作为文档类调用的。如果你在你的FLA文件的主场景里,直接绑定这个类文件,编译器肯定会报错说应该有一个参数,当前为0个。如果不绑定文件档类,在主时间轴上进行实例化,如:
var Card:card=new card(15)
那么编译器又会提示你的这个type,动态文本是未定义的,即便你在场景中有一个实例名为type的动态文本也会报错。
所以,如果要从主场景直接调用的话,你的这个类要进行一些修改。如
type.text=String(n)  这一行,删除掉,然后在主时间轴上写

var Card:card=new card(15)
type.text=String(Card.n)    前提是你的场景里已经有了一个实例名为type的动态文本。

还要把
private var n:uint; 这行里的这个私有定义变量变成公有的。
public var n:uint

你也可以,在你的类文件里使用代码创建一个动态文本。如:
package {
import flash.display.MovieClip;
import flash.text.TextField;
public class card extends MovieClip {
private var n:uint;
private var type:TextField=new TextField()
public function card(num:uint) {
addChild(type)
n = num;
type.x=100
type.y=100
type.text=String(n)
}
}
}

然后时间轴上写
var Card:card=new card(15)
addChild(Card)
全部回答
  • 1楼网友:野味小生
  • 2021-03-19 21:34
 
var shiLi:card=new card(152);
就是这样调用
  • 2楼网友:街头电车
  • 2021-03-19 21:12
var cd:card=new card(12);
addChild(cd);
//但你看到什么?出错。因为文本框type不存在,应该在你的类中生成一个,并addChild(type);追问type是主场景里的动态文本 这样的话是不是就不需要在类中生成了追答主场景中的内容,在在非文档类中不能直接引用的。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯