Actionscript 3 Actionscript 3-如何将MovieClip作为根对象添加到舞台?

Actionscript 3 Actionscript 3-如何将MovieClip作为根对象添加到舞台?,actionscript-3,flash,Actionscript 3,Flash,我正在努力学习动作脚本3。我需要将原点从左上角移到舞台中央。我发现这个问题在stackoverflow上得到了回答: 建议是,“创建一个MovieClip或Sprite,并将其作为根对象添加到stage.width/2,stage.height/2中的stage(而不是添加到stage) 这是什么意思?什么是根对象?如何将MC作为根对象添加到后台?启动swf时,基本上就是启动MovieClip。(我很可能会因为这个类比而被撕成一个新的。)。所以当你写这个的时候 var myMC:MovieCl

我正在努力学习动作脚本3。我需要将原点从左上角移到舞台中央。我发现这个问题在stackoverflow上得到了回答:

建议是,“创建一个MovieClip或Sprite,并将其作为根对象添加到stage.width/2,stage.height/2中的stage(而不是添加到stage)


这是什么意思?什么是根对象?如何将MC作为根对象添加到后台?

启动swf时,基本上就是启动MovieClip。(我很可能会因为这个类比而被撕成一个新的。)。所以当你写这个的时候

var myMC:MovieClip = new MovieClip();
addChild(myMC);
您正在将MovieClip添加到电影根/舞台。因为不可能真正改变根/阶段的起源,所以这篇文章建议你做下一件最好的事情。通过创建另一个MovieClip并像这样添加到您的根/阶段

var fauxRoot:MovieClip = new MovieClip();
fauxRoot.y = stage.stageHeight/2;
fauxRoot.x = stage.stageWidth/2;
addChild(fauxRoot);
现在,您已经将fauxRoot MovieClip置于根/舞台的中心,可以将所有元素添加到fauxRoot而不是根/舞台。由于fauxRoot位于主根/阶段的中心,因此0,0将位于中心。添加按钮的示例可能是

var uiButton:Button = new Button();
uiButton.x = uiButton.width/2;
uiButton.y = uiButton.height/2;
fauxRoot.addChild(uiButton);

按钮现在应该居中在屏幕的中间。希望这能有所帮助。

你能说说为什么你认为你需要改变你的出身吗?事实上,你几乎肯定不需要——而且可能有比创建“伪舞台”电影剪辑更简单的解决方案。但你到底想做什么?我只是觉得这样比较舒服。我正在做一个物理模拟,它需要不断输出一个运动物体的坐标,当原点在舞台中央时,它更容易可视化。