我找到了这篇文章,这正是我想要的,但我想由于Flash版本的不同,我无法让它发挥作用。 发布:Action Script 3: Adding an gotoAndStop Animation
我得到的错误是:"
1013:private属性只能用于class属性 定义"
这是用于完成lineContainer声明的行。
我尝试在课堂内声明它,但后来我得到错误说明:
"提供的显示对象必须是来电者的孩子"。
我对flash和AS3很新,所以我无法解决这个问题。我正在使用Flash CC。任何帮助都会很棒。谢谢你的时间。
答案 0 :(得分:0)
我认为您在时间轴中使用关键字private
。您无法在时间轴中声明全局变量。你想要使用课程。
您的第二个问题是this.getChildIndex(one)
行。很可能one
不存在。
答案 1 :(得分:0)
根据评论中的代码(我修复了一些缺少的大括号):
package
{
import flash.display.Sprite;
import flash.display.Shape;
private var lineContainer:Shape = new Shape(); // ERROR
public class Main extends Sprite {
public function Main():void
{
addChildAt(lineContainer, this.getChildIndex(one));
addListeners();
}
}
}
你得到的错误:
1013:private属性只能用于类属性定义。“
这是因为您在private
类之外指定了Main
属性。此外,变量one
未在类中的任何位置声明,因此也应该抛出另一个错误。您需要创建名为one
的属性或函数变量,然后根据需要设置它,然后将其用作getChildIndex()
函数调用的参数
相反,你应该这样做:
package
{
import flash.display.Sprite;
import flash.display.Shape;
public class Main extends Sprite {
private var lineContainer:Shape = new Shape();
public function Main():void
{
addChildAt(lineContainer, this.getChildIndex(one));
addListeners();
}
}
}
尝试此操作并重新编译并查看哪些错误(如果仍有)。还要确保此代码位于名为“Main.as”的文件中。