【发布时间】:2011-11-04 06:47:41
【问题描述】:
谁能告诉我这段代码有什么问题?我正在尝试旋转动作脚本 3 中的按钮,但我不断收到错误消息:
ArgumentError:错误 #2025:提供的 DisplayObject 必须是子对象 来电者的。在 flash.display::DisplayObjectContainer/removeChild() 在 分配器_app_fla::MainTimeline/NewChartOptionsReturn()[distributor_app_fla.MainTimeline::frame1:218] 在 distribution_app_fla::MainTimeline/ClickNewChartOptions()[distributor_app_fla.MainTimeline::frame1:101]
我已经用谷歌搜索了错误,我读到的所有内容都告诉我删除孩子,然后将其重新添加到框架中,但它继续在同一位置中断。
代码:
//defined
var btnNewChartOptions:NewChartOptions = new NewChartOptions();
btnNewChartOptions.y = 279;
btnNewChartOptions.x = 439;
//created
function NewChartDown():String
{
btnNewChartOptions.addEventListener(MouseEvent.CLICK, ClickNewChartOptions);
btnNewChartOptions.alpha = 0;
addChild(btnNewChartOptions);
var NewChartOptionsTween:Tween = new Tween(btnNewChartOptions, "alpha", Strong.easeOut, 0, 1, 1, true);
return "NewChartSelected";
}
//actual code on button
function NewChartOptionsDown():String
{
rightGrayOut.alpha = 0;
addChild(rightGrayOut);
var grayOutTween:Tween = new Tween(rightGrayOut, "alpha", Strong.easeOut, 0, 1, 1, true);
var rotateTween:Tween = new Tween(btnNewChartOptions, "rotation", Strong.easeOut, 0, 180, 1, true);
return "NewChartOptions";
}
感谢任何帮助!
【问题讨论】:
-
要修复您的问题,请尝试将 `removeChild(btnNewChartOptions);` 替换为
if(btnNewChartOptions.parent == this) removeChild(btnNewChartOptions);。但是我认为你的解决方法是错误的开始。 -
@Taurayinope 仍然是相同的运行时错误。至于把它放在错误的地方,那是很可能的,因为我对 as3 几乎是全新的。我试图让按钮在点击时用补间旋转
-
我还能把它放在哪里?如果你愿意,我可以复制完整的代码,但它看起来像评论中的一团糟
-
只需编辑您的问题并将其发布在底部,而不是放在评论中。
-
这个评论区正上方是一个链接“编辑”点击它。
标签: actionscript-3 button rotation