首先,我要解释的是我对ActionScript不熟悉,所以不要为一些基本错误而责怪我。我只是在很短的时间内就学会了。因此,始终喜欢编写脚本脚本的一些技巧。:)
我不知道为什么编译器说我的一个类的构造函数不接受任何参数。
好的。您可能会通过以下代码获得我的意思。
这是一个Player.as:
public class Player extends Sprite
{
public var mcHealthBar:HealthBar;
public function Player()
{
// Here a compiler error is found.
mcHealthBar = new HealthBar(max_health);
}
}
还有一个HealthBar.as:
public class HealthBar extends MovieClip
{
private var max_hp:int;
public function HealthBar(MaxHP:int)
{
// constructor code
max_hp = MaxHP;
}
}
编译器说HealthBar的构造函数不能与参数一起使用,但是您可以清楚地看到HealthBar内部的HealthBar()构造函数。因为已经用参数MaxHP编写了。
最后,我想问的是,为什么会产生编译器错误?
注意:我正在一起使用Flash-Builder和Flash-Professional进行编码。我通过Flash-Builder创建了一个Flash-Professional项目。我使用Flash-Professional进行绘图,并使用Flash-Builder进行编码。
可能存在一些语法错误的英语错误...因此,我为我的英语能力很差而感到抱歉。
当我之前遇到此问题时,通常是这样的问题:
HealthBar
可能绑定到FlashPro中的库对象。(您已将其导出为actionscript并为其指定了类名HealthBar
)。
问题是FlashPro没有看到类文件,因此它生成了它自己的文件(没有构造函数参数)。
您可以通过单击库对象的链接属性上的“编辑”图标来测试flashPro是否看到该文件(见图)。如果出现了定制的.as文件,那么这不是问题。
通常的原因是.as文件不在正确的位置,或者包名称对于文件的实际位置不正确。
如果您的.as
文件仅使用package {
,则默认情况下,该文件应与该文件放置在同一目录中.fla
。
如果是,package bob {
则它应位于名为bob的文件夹中(默认情况下,该文件夹与.fla处于同一目录中)
您可以通过在文件菜单上找到的ActionScript设置来更改.fla查找类文件的位置。
该窗口具有名为“源路径”的选项卡,您可以在其中添加目录以查找.as文件。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句