Actionscript 3 ActionScript 3错误:1083:语法错误:包意外
嗨,我目前正在学习如何使用Flash,所以我正在创建一本彩色书作为一个项目,但我的代码有问题。我写的代码是:Actionscript 3 ActionScript 3错误:1083:语法错误:包意外,actionscript-3,flash,Actionscript 3,Flash,嗨,我目前正在学习如何使用Flash,所以我正在创建一本彩色书作为一个项目,但我的代码有问题。我写的代码是: import coloring; PrevBtn.addEventListener(MouseEvent.CLICK, fl_ClickToGoToAndStopAtFrame_14); function fl_ClickToGoToAndStopAtFrame_14(event:MouseEvent):void { gotoAndStop(40); } Hom
import coloring;
PrevBtn.addEventListener(MouseEvent.CLICK, fl_ClickToGoToAndStopAtFrame_14);
function fl_ClickToGoToAndStopAtFrame_14(event:MouseEvent):void
{
gotoAndStop(40);
}
HomeBtn.addEventListener(MouseEvent.CLICK, fl_ClickToGoToAndStopAtFrame_11);
function fl_ClickToGoToAndStopAtFrame_11(event:MouseEvent):void
{
gotoAndStop(10);
}
NextBtn.addEventListener(MouseEvent.CLICK, fl_ClickToGoToAndStopAtFrame_13);
function fl_ClickToGoToAndStopAtFrame_13(event:MouseEvent):void
{
gotoAndStop(20);
}
HelpBtn.addEventListener(MouseEvent.CLICK, fl_ClickToGoToAndStopAtFrame_31);
function fl_ClickToGoToAndStopAtFrame_31(event:MouseEvent):void
{
gotoAndStop(45);
}
任何帮助都将不胜感激。提前谢谢
**更新:
因此,我创建了coloring.as,现在将其导入到我的代码中,但当我看到我的着色表时,我发现了一个进一步的错误,它显示:
TypeError: Error #1009: Cannot access a property or method of a null object reference.
at laurenBurke/frame15()
at flash.display::MovieClip/gotoAndStop()
at laurenBurke/fl_ClickToGoToAndStopAtFrame_4()**
coloring.as文件包含以下代码
package {
import flash.display.Sprite;
import flash.geom.ColorTransform;
import flash.events.MouseEvent;
public class coloring extends Sprite {
public var Design1:Design1 = new Design1();
public var palette:palette_mc;
public var pal_color:ColorTransform;
public var colors:Array=new Array(0x000000,0xFFFFFF,0xFF0000,0xFF4040,0x333399,
0x99CCCC,0xFFCC00,0xFFFF66,0x33CC00,0x99FF66,
0x660099,0x9933FF,0xFF8000,0xFF9966,0xFF0099,
0xFF99CC,0x0099CC,0x6699CC,0x666666,0xCCCCCC,
0x003366,0x000033,0x99CC99,0x4E9A4E,0x9966FF,
0x990066);
public var current_color:int=0;
public function coloring():void {
addChild(Design1);
Design1.addEventListener(MouseEvent.CLICK,on_Design1_click);
for (var i:int=0; i<26; i++) {
palette = new palette_mc();
pal_color=palette.transform.colorTransform;
pal_color.color=colors[i];
palette.transform.colorTransform=pal_color;
palette.x=40+i*60;
palette.y=300;
palette.ind=i;
addChild(palette);
palette.addEventListener(MouseEvent.CLICK,on_palette_click);
}
}
public function on_palette_click(e:MouseEvent):void {
var palette_clicked:palette_mc=e.currentTarget as palette_mc;
current_color=palette_clicked.ind;
}
public function on_Design1_click(e:MouseEvent):void {
for (var i:int = 0; i < Design1.numChildren; i++) {
if (Design1.getChildAt(i).hitTestPoint(mouseX,mouseY,true)) {
pal_color=Design1.getChildAt(i).transform.colorTransform;
pal_color.color=colors[current_color];
Design1.getChildAt(i).transform.colorTransform=pal_color;
}
}
}
}
}
包{
导入flash.display.Sprite;
导入flash.geom.ColorTransform;
导入flash.events.MouseEvent;
公共类着色扩展了Sprite{
公共变量Design1:Design1=newdesign1();
公共变量调色板:调色板_mc;
公共颜色:颜色变换;
公共变量颜色:数组=新数组(0x000000,0xFFFFFF,0xFF0000,0xFF4040,0x333399,
0x99CCCC,0xFFCC00,0xFFFF66,0x33CC00,0x99FF66,
0x660099,0x9933FF,0xFF8000,0xFF9966,0xFF0099,
0xFF99CC、0x0099CC、0x6699CC、0x666666、0xCCCC、,
0x003366,0x000033,0x99CC99,0x4E9A4E,0x9966FF,
0x990066);
公共变量当前颜色:int=0;
公共函数着色():void{
addChild(设计1);
设计1.addEventListener(MouseeEvent.CLICK,on_Design1_CLICK);
对于(var i:int=0;i在此处使用与类本身相同的标识符声明Design1:
public var Design1:Design1 = new Design1();
…正在创建一个不明确的引用。稍后,当您调用addChild(Design1);
时,您可能试图将类对象本身而不是实例添加到stage。请尝试将var名称更改为camel case。在此处使用与类本身相同的标识符声明Design1:
public var Design1:Design1 = new Design1();
…正在创建一个不明确的引用。稍后当您调用addChild(Design1)时
您可能正在尝试将类对象本身而不是实例添加到后台。请尝试将变量名称更改为camel case。您应该将着色类放入着色.as
文件中,然后将其导入Flash应用程序,或者如果是这样的话,将其设置为应用程序的文档类。@akmozo感谢您的支持回答!当我说我是flash新手时,我指的是全新的。你介意解释一下我怎么做吗?好的,没问题。如果那个类是你的文档类,看一看,如果它只是一个类,你必须将它保存为着色。作为在你的flash项目旁边,然后使用:导入着色;
…谢谢你!我会尝试的我现在不出去:)@akmozo很抱歉再次打扰你,但我尝试了你的建议,认为我做错了什么。有什么建议吗?你应该把你的着色类放在着色.as
文件中,然后将其导入到你的Flash应用程序中,或者如果是这样的话,将其设置为你应用程序的文档类。@akmozo感谢你的回复!当我说我是新手时flash我的意思是全新的。你介意解释一下我怎么做吗?好的,没问题。如果那个类是你的文档类,看一看,如果它只是一个类,你必须将它保存为着色。作为flash项目旁边的,然后使用:导入着色;
…谢谢磨坊!我现在就试试:)@akmozo抱歉又惹你生气了,但我尝试了你的建议,认为我做错了什么。有什么建议吗?