资源预览内容
第1页 / 共31页
第2页 / 共31页
第3页 / 共31页
第4页 / 共31页
第5页 / 共31页
第6页 / 共31页
第7页 / 共31页
第8页 / 共31页
第9页 / 共31页
第10页 / 共31页
亲,该文档总共31页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
Flahs as入门教程郴州师范 雷勇第一章 AS的基本常识FLASH中actionscript(简称AS)是非常重要的构成部分。一方面理解如何在FLASH输入程序一般我们按F9可以调出动作面板。或者在FLASH菜单Window里面Actions可打开ACTION面板,ACTION面板分右面的脚本窗,和左面的工具窗脚本窗就是放脚本的地方,而工具窗用于迅速地输入多种ACTION,运算符,函数,属性,对象建议人们使用专家模式,在FLASH菜单的Edit的Preferences的Actions panel里面选Expert Mode,后来每次打开ACTION面板都会自动设立为专家模式(专家模式可直接输入代码,初学者学下去就会懂得,诸多代码无法在一般模式里输入) AS的某些概念所有代码都需存于某个地方,可以是frame(帧), button(按钮), or movie clip(电影夹子)。只要你选择了某按钮或MC,你之后输入的代码就寄存在它的上面了,注意此时ACTION面板上方提示为Object Actions。同理你也可以将代码寄存于帧,但是此时提示为Frame Actions。当你在专家模式的时候仍无法输入代码,你一方面要检查你与否选择了frame, button, 或MC来寄存代码。 一方面我们要理解AS要写在什么地方,什么时候AS会被触发执行。1、帧:写在核心帧上面的AS,当时间轴上的指针走到这个核心帧的时候,就写在这个帧上面的AS就被触发执行了。常用的例子有在影片结尾的帧写上 stop() 等。操作措施就是点选核心帧,然后打开AS面板,写下”stop()”。2、按钮:不同于帧上面的AS,按钮上面的AS是要有触发条件的。做一种按钮,放到主场景,点选按钮,然后打开AS面板。目前如果也在按钮上写 stop(); 那么,输出的时候就会提示错误。对的的应当这样写 on(release) stop(); 这里要比帧的动画多这些代码: on(release) , 整个代码翻译过来就是: 当(松开)停止 ()里的代码表达鼠标的触发事件事件之一,这里用的是 release 松开,按钮的常用事件:release 松开 releaseOutside 在按钮外面松开 press 按下 rollOver 鼠标进入按钮的感应区 rollOut 鼠标离开按钮的感应区 当剪辑(载入) 停止 目前很明确了:写在按钮上面的AS一定就是这种格式的: on(事件)要执行的代码 3、MC(电影剪辑) MovieClip的简称onClipEvent(load) stop();如果你看懂了上面的内容,那么写在MC上面的AS和写在按钮上的大同小异。操作措施就是点选MC,然后打开AS面板。看个例子()里的代码同样表达一种事件。MC的事件有下面这些:load 载入,当MC浮现的时候执行。也就是除非卸载这个MC,否则load事件内的代码只执行一次 unload 卸载,当MC卸载的时候执行 onClipEvent (enterFrame) this._x += 5; 球就能不断向右移动。enterFrame 存在的每个帧。在MC存在的每个帧都要执行一次代码。只要这个MC存在于场景,代码就反复执行。一般可用于循环。举例:如果你在场景中放置一种小球MC,那么在球上写代码mouseDown 按下鼠标,在场景内任何地方都算。和按钮不同样的地方 mouseMove 移动鼠标,只要移动鼠标就执行代码 mouseUp 松开鼠标 同样你要明确:写在MC上的代码一定总是这种格式:onClipEvent(事件)代码 看到这里,如果你明白的写在 帧、按钮、MC上的代码有什么不同样,任务就算完毕了 。第二章 AS 对象篇学会用绝对途径和相对途径体现对象虽然AS不是真正的面向对象的编程,但是它也有对象的概念。这个概念贯穿整个AS的始终,因此,对对象的理解,比对语法或者其她的理解更为重要。目前开始吧:一方面,我们来理解一下途径,途径分两种:绝对途径和相对途径。做过html的朋友应当懂得这个概念。但这里还是要具体解释一下,对途径的理解要进一步。在讲途径之前,有必要先讲一下 .语法 : 举例阐明,这里要表达房间里的桌子上的一本书,用 .语法这样表达:房间.桌子.书 如果要再细到书上的页上面的字,很显然是: 房间.桌子.书.页面.字 看明白了吧?我也不懂得怎么说, .语法就是这样表达对象的,点的前面是其背面的父级。如房间是桌子的父级,桌子的子级就是书。还是不明白?这样吧,你把 . 里写成“里面的”就可以了,这样就是:房间(里面的)桌子(里面的)书(里面的)页面(里面的)字 。目前开始说途径了,其中也要夹杂的对象的阐明,看:从例子入手。创立一种MovieClip,MC命名为“MC”,放在主场景里面,然后再做一种按钮,放在“MC”里面,分别给MC实例和按钮实例命名(Instance Name , 注意是实例名不是MC的名字):MC-myMC ,button-myBtn 目前我们假设主场景(AS中表达为_root)是房子,MC是桌子,按钮是书,那么分别怎么体现房子,桌子,书呢?如下图:场景_rootMyBtnmyMc_root 房子_root.myMc 房子.桌子_root.myMc.myBtn 房子.桌子.书 这里的 _root 是Flash的核心字,表达主场景的 Timeline (时间线)。这里的 房子,桌子,书 都是我们要理解的“对象”。找到这个对象后,才干对对象进行操作,施加措施。如:我目前要打扫房子,打扫是措施,但对象是房子,体现式是这样 :房子.打扫() 如果你不能对的的体现房子这个对象,你的打扫也就不能对的的实行了。*阐明:这里为什么要在打扫背面加()呢?由于打扫是措施不是对象,为了让Flash懂得这是个措施,我们必须加上(),要否则它会觉得房子里面有“打扫”这个东西。目前,我们可以很容易的对房间里面的各个东西进行操作,如房子.打扫();房子.木桌子.整顿();房子.玻璃桌子.打碎();房子.书桌.书.看(); 等等,相信你把它们翻译成AS代码没什么问题吧例如要主场景停止播放,就是 _root.stop(); 要MC停止播放,就是 _root.myMc.stop(); 以上的写法是绝对途径。目前说说相对途径。还是上面的例子。如果给你下了一种命令:修理房子里面的红色的椅子。那么怎么体现呢?就是: 房子.红色椅子.修理() 但是如果命令式写在红色椅子上,那么命令可以写成:这张椅子. 修理();这就是相对途径。换过来用Flash实例阐明。目前我想让主场景下的一种带动画的电影剪辑 myMC 在一开始就不要播放,而是先停止。那么你有什么措施呢?措施之一也许就是使用绝对途径,在主场景放入这个MC的那个帧写上:_root.myMc.stop(); 这个是对的。但是一旦 myMc 的名字一变,你就得跟着改这句话了。有无措施不管这个“MC”的实例名不管怎么改,都会被我们同样一句的AS找到?固然可以,就是把AS写在这个MC上。选中Mc, 在 AS面板上写 onClipEvent (enterFrame) this.stop(); 这里的this也是Flash的核心字 , 这个 this 就是指这个MC自身 .目前不管你这个MC放在哪里,命名是什么,反正肯定会停下来。为什么,由于AS在MC上。 如果你在这里写上 _root.stop(); 那就错了。为什么?仔细想想。此外的一种核心字就是 _parent 。如果你理解了 this , 那么 _parent 并不难理解。举例:还是哪个假设 房子(_root) , 桌子, 书她们的关系是:房子.桌子.书选中桌子,在桌子上写代码:写onClipEvent(enterFrame) _parent.打扫(); 意思就是打扫房间;选中书,在书上写代码:写onClipEvent(enterFrame) _parent.打扫(); 意思就是打扫桌子。_parent 也就是父级。桌子的 _parent 就是房子的 timeline(时间线) , 书的 _parent 也就是 桌子。点的背面对象的 _parent 就是点前面的对象。 第三章 AS 语法篇一方面要强调的是:AS 语法的大小写是敏感的。如: gotoAndPlay() 对的 gotoAndplay() 错误 。核心字的拼写必须和语法一致,要做到很容易,由于在Flash的AS面板里面,核心字会有不同样的颜色显示。这里说一下,我们要从开始就养成编程的好习惯,如在每个语句背面都加上分号,有也许的话,尽量给复杂的语句加上注释。注释的例子/这个是注释,但是只能有一行/* 这个也是注释,可以写诸多行 */ 接下来,简介几种类型的语法。1、几种常用的控制场景的措施,如play(); /让时间轴的指针播放stop(); /停止时间轴的指针在程序触发时候的那个帧gotoAndPlay(); /让指针跳转到某个帧,然后继续播放gotoAndStop(); /让指针跳转到某个帧,停止在那个帧nextFrame(); /往下走一帧 prevFrame(); /往前走一帧 这些都是措施。措施?解:打个比方,我们管吃饭叫作一种措施,用来解决肚子饿这个问题。我们管stop()叫做一种措施,用来解决时间轴指针停下来的问题。我们管上面的几种东西叫措施,用来解决时间轴指针运动的问题。 2、控制属性的语法有诸多,我列几种_x, _y, _alpha,_width,_name,.等等属性,这些都是属性属性?解:打个比方。我们管你的身高叫做属性,用来标记你的高度。我们管你的体重叫属性,用来标记你的质量。我们管 _x 叫属性,用来标记目的的X轴坐标。我们管_alpha叫属性,用来标记目的的透明度.3、其她措施和自己定义的措施。除了系统自带的某些措施外,也可以自定义某些措施,用Function定义。回忆一下,今次要人们记住的东西:AS 语法的大小写是敏感的、措施的概念、属性的概念。第四章:如何写AS程序要牢记的是,学习编程是一种过程(process)而不是一种事件(event)。如果你第一次学习到的时候不能照着完毕也不必紧张。有关计算机语言:编程语言是用来发指令给电脑,由电脑接受信息并执行命令编程语言也有词汇表和文法,如人类的语言类似通过编程语言我们可以告诉电脑去做什么,也可以从她那获得信息 有关语法和逻辑:学习编程的思想比学习一种语言的语法重要假设FLASH是懂我们语言的单词的,我们对FLASH说:“Flash, 让一种球在屏幕里面弹来弹去吧”FLASH会什么都做不了,FLASH要我们用她的世界懂的东西,例如:movie clips, buttons, frames,来描述它要做的事那我们再说一次:“Flash, 让一种名字叫ball_one的movie cl
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号