首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用变量向DisplayList添加对象

使用变量向DisplayList添加对象
EN

Stack Overflow用户
提问于 2017-09-24 16:57:09
回答 1查看 43关注 0票数 0

我试图将对象添加到显示列表中,但是对于我的项目来说,如果我能运行一段代码,将5个对象中的一个放到屏幕上,那就太好了。目前,如果我输入对象的名称,代码就会工作,但是如果我试图通过变量给它类名,代码就会失败。有什么想法吗?

代码语言:javascript
复制
var sides:Array = new Array(Edge, Edge, Edge, Edge, Edge, Edge); 

var side1:sides[0] = new sides[0]();
centerHex.addChild(side1);
side1.y = side1.y - 20;

抛出此错误:

1086:语法错误:左括号前期望分号。

但是,此代码可以工作:

代码语言:javascript
复制
var side1:Edge = new Edge();
centerHex.addChild(side1);
side1.y = side1.y - 20;

有什么想法吗?任何帮助都是非常感谢的。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-09-24 17:16:26

您不能将变量声明为来自的变量,因为变量声明是编译时操作,而数组项在运行时可用,即稍后的

而且你不需要这么做。只需将其声明为DisplayObject,,或者根本不声明,这不是强制性的,您没有义务这样做,它会很好:

代码语言:javascript
复制
var Sides:Array = [Edge, Edge, Edge, Edge, Edge, Edge]; 

for (var i:int = 0; i < Sides.length; i++)
{
    var SideClass:Class = Sides[i];
    var aSide:DisplayObject = new SideClass;

    var anAngle:Number = i * Math.PI / 3;

    aSide.x = 100 * Math.cos(anAngle);
    aSide.y = 100 * Math.sin(anAngle);
    aSide.rotation = anAngle * 180 / Math.PI;

    centerHex.addChild(aSide);
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46392549

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档