我在这里发现了错误,我应该在大括号之间输入构造函数
将功能调用到主时间线
公共功能创建(){
这是我在fla文件中的代码
//var createClass:creation = new Circle( this );
构造函数
package {
import flash.display.InteractiveObject;
import flash.text.TextField;
import flash.text.TextFormat;
import flash.display.MovieClip;
public class creation extends MovieClip {
// global variables
public function creation():void {
// constructor code
for (i= 0 ; i<= 4; i++)
{ first1[i]= createCustomTextField(0,(i*100),75,45);
op[i]= createCustomTextField(150,(i*100),75,45);
second[i]= createCustomTextField(300,(i*100),75,45);
res[i]= createCustomTextField(450,(i*100),75,45);
if (operation_Count == 1)
{
op[i].text = "+";
} else if (operation_Count == 2)
{
op[i].text = "-";
}else if (operation_Count == 3)
{
op[i].text = "*";
}else if (operation_Count == 4)
{
op[i].text = "/";
}
first1[i].text = String(k1[i]=Math.round(Math.random()*10));
second[i].text = String(k2[i]=Math.round(Math.random()*10));
}
}
答案 0 :(得分:1)
在创建类的新实例时调用类构造函数。在您的情况下,createClass()不仅错误,而且也是多余的。已经调用了构造函数。
现在,如果你想在特定的框架上调用该类的方法
//calling the class constructor var myClass:MyClass = new MyClass(); //calling a class method myClass.myMethod();好吧,错误说方法需要一个参数,如果它不是你的构造函数,你将不得不寻找其他地方。调试你的应用程序,转到第一个被调用的函数,检查它,如果没问题,转到第二个等等......在你的情况下,这将是createCustomTextField()。这可能是一个漫长的过程,因此其中一种方法是简化,在较小的部分中分解代码并尝试识别它的中断位置
你可以尝试这个,例如,如果有错误,去createCustomTextField并尝试类似的东西,即将你的功能拆分成较小的部分,直到你找到一个破坏的那个......
public function creation():void { first1[0]= createCustomTextField(0,(i*100),75,45); }