FLASH脚本基础入门讲解、按钮AS的编写、影片剪辑的AS编写
- 格式:doc
- 大小:306.00 KB
- 文档页数:81
FLASH脚本教程FLASH脚本教程:flashAS基础<一>在学AS的过程中特地搜寻整理出来的一些心得和体会,绝对精华!!!1.你先学会加动作的三种方式:在帧上加,在mc上加,在按钮上加.用play stop goto这三个命令反复练习.不要用太多的命令给自己吃迷晕药.用实例练,不要空练.2.会了我说的1后,要学给按钮加动作的8种方法和给mc加的9种方法.3,会了我说的2了,就要学个编程最基础最重要的东西----路径的描述(能看懂就能用)1> _root.mc1.mc2. ... mcn.play()[或stop(), _x, .......]2>_parnet3>this4>mc1.mc2. ...5>_leveln.mc1.mc2. ... mcn.play()[或stop(), _x, .......]练习这样个实例对你也许有帮助, 把一首你喜欢听的歌随意放在某个mc中,随意地在某个mc或按钮上加动作去控制它,想让它停就停,想让它放就放.4。
遇到问题,自己想办法解决,不要老是依*别人,在自己做过之后还是不行的话可就要发问拉,当然问的方法要好多种,这里就不说拉!5.要自强自信,不要迷信洋人的东东,活学活用重在理6.了解代码执行的先后顺序:图层默认的是从下向上执行level是从下向上执行帧是随实际播放顺序执行代码本身从上向下一行一行地执行7.了解两种坐标系统:场景下的坐标,o点在左上角,y轴向下是增大 x向右是增大组件的坐标,o点在组件中心,y轴向下是增大 x向右是增大8.了解三种文本域静态文体域:和排版软件的文字工具一样.动态文本域和输入文本域:其实就把它们看是两种变量,只不过是可见的变量, 9.详细了解GOTO语句prevFrame()跳至并停止在前一祯。
nextFrame()跳至并停止在下一祯。
prevScene()跳至并停止在前一场景的第1帧。
nextScene()跳至并停止在下一场景的第1帧。
关于Flash动作脚本--ActionScript ActionScript即动作脚本,简称AS。
在Flash动画中,使用AS 可以使动画实现交互或完成某些特效。
一、AS要写在什么地方,什么时候AS被触发执行?1、关键帧:写在关键帧上面的AS,当时间轴上的指针走到这个关键帧的时候,写在这个帧上面的AS就被触发执行了。
例如要让影片播放完成后停在最后一关键帧,操作方法就是点选最后一帧关键帧,然后打开动作面板,在面板中输入stop()。
2、按钮:不同于关键帧上面的AS,按钮上面的AS要有触发条件。
要把AS 写在按钮上,操作方法是点选目标按钮,然后打开动作面板。
例如:假设有个按钮,效果是按下按钮后停止播放,那么步骤如下:做一个按钮,放到主场景,点选按钮,然后打开AS面板。
现在如果也在按钮上写:on(release){stop();} //这里要比帧的动画多这些代码: on(release){}其中release是鼠标的触发事件事件之一,作用是松开按钮,按钮的常用事件:写在按钮上面的AS的格式:on(事件){要执行的代码} ,即按钮上的3、MC(影片剪辑)写在影片剪辑上的AS和写在按钮上的大同小异。
操作方法就是点选影片剪辑,然后打开动作面板。
看个例子:onClipEvent(load){stop();}这里load代表一个事件。
影片剪辑的事件有下面这些:写在MC上的代码格式: onClipEvent(事件){代码}二、AS中的对象和方法虽然AS不是真正的面向对象的编程,但它的概念贯穿整个AS的始终。
1、AS中的对象新建一个Flash文件,先创建一个命令按钮,然后创建一个影片剪辑,将命令按钮拖到影片剪辑中,命名为“myBtn”。
将影片剪辑拖到主场景中,命名为“myMC”。
现在如何表示主场景、影片剪辑、和按钮呢?方法如下:_root――主场景(主时间轴)_root.myMC ――主场景中的剪辑myMC_root.myMC.myBtn ――主场景的剪辑myMC中的按钮myBtn 这里的_root是Flash的关键字,表示主场景的 Timeline (时间轴)。
flash动作脚本-动态文本框、影片剪辑的拖拽、流程控制与循环语句四、动态文本框一、flash 中的动态文本使用方法在flash中,文本工具提供了三种文本类型。
分别是:静态文本、动态文本和输入文本。
下面讲解的内容属于动态文本的AS 编写规则。
要创建一个动态文本非常简单,只需要选中文本工具,然后选择动态文本类型,然后在舞台上拖拽出所需要的动态文本框就行了。
二、如何为动态文本赋值当在舞台上拖拽出动态文本框之后,可以直接在里面进行文本输入或粘贴外部文本内容。
那么用AS 如何来对动态文本框赋值呢?在这里为大家介绍两种方法进行赋值!1、使用动态文本的实例名字来赋值操作步骤:(1)在舞台上创建一个动态文本框,并为这个动态文本实例起一个名字,例如abc(2)选中时间轴的第一桢,打开动作面板,输入以下脚本:abc.text = "爱国者安全网"按下ctrl+回车就可进行测试了。
从这个简单的例子可以知道,如果要用文本实例名字来进行赋值的话,必须使用以下格式:动态文本实例的名字.text=”需要赋值的内容”2、使用变量来赋值(1)在舞台上创建一个动态文本框,并为这个动态文本实例起一个变量名3800hk。
(2)选中时间轴的第一桢,打开动作面板,输入以下脚本:3800hk= "欢迎大家来到爱国者安全网学习!"不难看出,使用变量赋值更为简单实用!赋值格式为:变量名=“赋值的内容”以上两种赋值方法如果内容过多需要换行的时候,需要使用行用回车符(“\r”即ASCII13)分隔!三、如何载入外部txt 文本里的内容当内容过多的时候,使用上面的方法并不是太好,我们可以使用下面的方法,从外部获取文本资料内容!而外部的资料内容就放在一个普通的txt(记事本)文件中。
具体操作步骤如下:1、创建一个动态文本实例,并为这个动态文本实例起一个变量名hk2、选中时间轴的第一桢,打开动作面板,输入以下脚本:loadVariablesNum("heiying.txt", 0);//载入外部名字叫heiying.txt 的文本文件,加载级别为03、现在来准备外部的heiying.txt 文本文件了。
第二部分:flash的流程控制一、时间轴控制通过本课的学习,掌握在按钮上添加代码的方法;理解 on 命令的函数功能;掌握时间轴控制命令的功能,语法格式;掌握在帧上添加命令基本操作,能使用帧命令和按钮命令控制一些简单的时间轴动画。
1、时间轴控制命令时间轴控制语句是较基础的 ActionScript 控制语句。
它们的主要任务是控制帧的停止、播放、跳转等。
只要带有时间轴的动画效果,就可以用时间轴控制语句来进行控制。
时间轴一共有两种,一种是场景中的时间轴,我们叫做主时间轴。
另一种是元件中的时间轴,例如影片剪辑、图形元件中的时间轴。
所以,时间轴控制语句也可以分成两类,一类是控制主时间轴,一类控制影片剪辑时间轴。
打开动作脚本箱,点击“全局函数”“时间轴控制”我们会看到时间轴控制中有9 条时间轴控制命令。
在这一课中我们将分别介绍它们的功能及使用方法。
play 和 stop 在 Flash 中用于控制动画的播放和停止,play 命令使播放头从它当前位置向后移动。
stop 命令停止当前正在播放的 SWF 文件。
此动作通常的用法是用按钮控制影片剪辑。
使用方法如下:路径.play() 路径.stop()2、帧命令我们知道一个有动画的影片剪辑,场景时间轴只有一帧这个影片剪辑也能正常播放,但如果是图形元件做的动画,在场景中必须有与元件时轴同样的帧频数才能正常播放。
这就说明了影片剪辑有独立的时间轴。
而图形元件的时间轴必须依赖父级时间轴,所以,场影中的影片剪辑实例,必须控制影片剪辑的时间轴。
要在场景中控制影片剪辑的时间轴,就要给影片剪辑输入实例名称。
通过前面的实例,我们来已经掌握了在帧上添加命令的方法,初步了解通过当前时间轴、根时间轴控制元件时间轴;通过元件时间轴控制元件时间轴的方法。
总结:通过本课学习,要掌握自身时间轴的控制,子级时间轴的控制,父级时间轴的控制,方法是:找准你要控制目标的路径,正确输入实例名后,你只需在路径后面加上一个小点“.”然后加上 stop()或 play()等命令。
flash脚本语言as学习教程AS基础-----------------------------------做过Flash动画的Flash爱好者们都知道,要做好一个Flash动画,AS是必不可少的,即使只是很简单的几句代码也能起到整个Flash画龙点睛的作用。
这里我只简单的介绍一下AS的基本常识。
首先我们要了解AS要写在什么地方,什么时候AS会被触发执行。
1、帧:写在关键帧上面的AS,当时间轴上的指针走到这个关键帧的时候,就写在这个帧上面的AS就被触发执行了。
常见的例子有在影片结尾的帧写上 stop() 等。
操作方法就是点选关键帧,然后打开AS面板。
2、按钮:不同于帧上面的AS,按钮上面的AS是要有触发条件的。
要把AS写在按钮上,操作方法是点选目标按钮,然后打开AS面板。
举个例子能说的更明白。
假设有一个动画,要让它在播放完同时停止,那么,你要做的就是在这个动画的最后一帧写ASstop();再假设有个按钮,效果是按下按钮后停止播放,那么步骤如下。
做一个按钮,放到主场景,点选按钮,然后打开AS面板。
现在如果也在按钮上写stop();那么,输出的时候就会提示错误。
正确的应该这样写on(release){stop();}这里要比帧的动画多这些代码: on(release){} , 整个代码翻译过来就是: 当(松开){停止}红色的代码表示鼠标的触发事件事件之一,这里用的是 release 松开,按钮的常用事件:release 松开releaseOutside 在按钮外面松开press 按下rollOver 鼠标进入按钮的感应区rollOut 鼠标离开按钮的感应区现在很明确了:写在按钮上面的AS一定就是这种格式的:on(事件){要执行的代码}3、MC(电影剪辑)如果你看懂了上面的内容,那么写在MC上面的AS和写在按钮上的大同小异。
操作方法就是点选MC,然后打开AS面板。
看个例子onClipEvent(load){stop();}同样,MC需要一个事件来触发AS的执行。
1、FLASH脚本基础入门讲解、按钮AS的编写、影片剪辑的AS编写2010-09-26 15:49:50| 分类:AS2.0课堂| 标签:flash教程|字号大中小订阅由于近段时间装修办公楼,网络不通,老虎学习了“FLASH脚本”文字教程。
走马观花看了一遍。
下载的教程不是源版,里面的插图没了,个别句子不全,还有个别例题既没讲怎么作,也没讲要达到什么效果。
还有些章节没讲透。
总之,老虎觉得这个教程讲得简洁,实用性较强。
希望学习的朋友,根据自己的需要来取舍。
(由于时间紧,有些插图等老虎有空时再插进来)一、FLASH脚本基础入门讲解认识“动作”面板在Flash中,动作脚本的编写,都是在“动作”面板的编辑环境中进行,熟悉“动作”面板是十分必要的。
按【F9】键调出“动作”面板,可以看到“动作”面板的编辑环境由左右两部分组成。
左侧部分又分为上下两个窗口。
左侧的上方是一个“动作”工具箱,单击前面的图标展开每一个条目,可以显示出对应条目下的动作脚本语句元素,双击选中的语句即可将其添加到编辑窗口。
下方是一个“脚本”导航器。
里面列出了FLA文件中具有关联动作脚本的帧位置和对象;单击脚本导航器中的某一项目,与该项目相关联的脚本则会出现在“脚本”窗口中,并且场景上的播放头也将移到时间轴上的对应位置上。
双击脚本导航器中的某一项,则该脚本会被固定。
右侧部分是“脚本”编辑窗口,这是添加代码的区域。
可以直接在“脚本”窗口中编辑动作、输入动作参数或删除动作。
也可以双击“动作”工具箱中的某一项或“脚本编辑”窗口上方的【添加脚本】工具,向“脚本”窗口添加动作。
在“脚本”编辑窗口的上面,有一排工具图标,在编辑脚本的时候,可以方便适时的使用它们的功能。
用“动作”面板的时候,可以随时点击“脚本”编辑窗口左侧的箭头按钮,以隐藏或展开左边的窗口。
将左面的窗口隐藏可以使“动作”面板更加简洁,方便脚本的编辑。
好了,动作面板就介绍这些,有个印象,不要求记住,工具栏上每个工具的作用和功能将在以后的课程中边用边熟悉。
如何编写flash中的脚本首先,要知道编写脚本,不需要用户对AS有完全的了解!现在要考虑的问题是,如何在你的flash中添加编写脚本?简单的说,添加脚本可分为两种:一是把脚本编写在时间轴上面的关键帧上面(注意,必须是关键桢上才可以添加脚本)。
二是把脚本编写在对象身上,比如把脚本直接写在MC(影片剪辑元件的实例)上、按钮上面。
此外,大家也需要简单理解一下flash是如何执行你编写的脚本的。
当你在时间轴的关键帧上添加了脚本,那么当flash运行的时候,它会首先执行这个关键桢上的脚本,然后才会显示这个关键桢上的对象。
还有一些简单的知识,AS中的对象都包括什么呢?它可以包含数据,也可以是舞台上的电影剪辑,也可以是舞台上的按钮等。
既然包含了那么多对象,那么每种对象肯定有各自的属性!比如电影剪辑(movieClip)对象,它的:属性就有_height(高度),_rotation(旋转),等,这些属性不需要你去特意的记忆,当使用的时候可以随时翻阅脚本字典。
在以后的教程中会陆续给大家介绍一些基础脚本的使用技巧。
需要学到的基本AS命令如下:stop()、play()、gotoandplay:跳转并播放()、gotoandstop跳转并停止()、nextFrame:运行下一帧()、prevFrame上一帧();、nextScene下一场景()、prevScene 跳至上一个场景并停止();、stopAllSounds停止所有声音();(这些都是“时间轴控制”的内容---老虎注)按钮的AS编写规则:播放on (release:释放) {_root.mc.pl ay();}如果要在按钮身上写脚本的话,必须使用on(事件){//脚本程序}的格式来写!上面的脚本作用就是:当你在这个按钮上按下释放鼠标(release事件)的时候,就会执行下面的_root.mc.play();程序,它的意思是让舞台上的mc开始播放!同理:咱们选中舞台上的暂停按钮,在它上面输入:on (release) {_root.mc.stop()}然后依次在快退上输入:on (release) {_root.mc.prevFrame(); //prevFrame表示回到动画的上一帧}在快进的按钮上输入:on (release) {_root.mc.nextFrame();}在停止的按钮上输入:on (release) {_root.mc.gotoAndStop(1); //跳到mc影片的第一帧,并停止播放!}二、按钮AS的编写在 flash 中的交互功能一般是由按钮来完成的。
掌握按钮的编写规则也是一个闪客的基本技能。
OK,现在咱们来说说按钮脚本如何编写。
上一讲中提过,AS 脚本编写可以写在时间轴的关键帧上,也可以写在对象本身上面。
按钮也不例外,既可以写在时间轴上,也可以写在按钮本身上面。
只不过这两种编写规则都要遵循一定的规矩,这是后话。
现在咱们来做一个例子,做一个按钮,这个按钮要实现的功能就是打开一个指定的网页。
(这个例子非常基础,用这个例子来讲解按钮 AS 两种编写方法。
)第一种:把脚本写在按钮本身。
一、在舞台上绘制一个矩形,选中矩形并按 F8,将这个矩形转换成按钮元件。
二、编写动作脚本:选中按钮,按 F9,打开动作面板,在专家模式下输入以下脚本:on(release){getURL("/","_blank")}现在这个按钮就实现了一个打开网页的功能。
通过例子你应该注意到,按钮的 AS 书写规则就是:on(事件){//要执行的脚本程序,刚才的例子是用 getURL 来打开一个网页。
你也可以使用脚本程序来执行其他功能,例如跳转到某一个帧,或载入外部一个动画文件。
}可以看到,其实就一个 on语句,这个 on语句就是按钮的 AS 编写规则了。
需要注意的是 on 里面的事件,这个事件你可以理解为是鼠标或键盘的动作。
刚才的例子我们使用的事件是 release(释放鼠标)我现在把常用的按钮事件列出来:事件名字说明Press 事件发生于鼠标在按钮上方,并“按下”鼠标Release 发生在按钮上方按下鼠标,接着松开鼠标时。
也就是“释放”鼠标Releaseoutside 发生于在按钮上方按下鼠标后,接着把光标移动到按钮之外,Rollover 当鼠标“滑过”按钮时Rollout 当鼠标“滑离”按钮时Dragover 发生于按着鼠标不放,光标滑入按钮即“拖过”Dragout 发生于按着鼠标不放,光标滑出按钮即“拖离”Keypress 发生于用户按下特定的键盘按键时第二种:把脚本写在时间轴上。
这种方法是把脚本程序写在时间轴上,而不是按钮本身上面。
一、选中按钮,在下面的属性面板中为按钮起一个名字,这里我起了一个 bt二、选中时间轴的第一帧,按 F9 打开动作面板。
输入如下脚本:bt.onrelease = function() {getURL("http:// /", "_blank");};这种编写 AS 的方法要遵循的规则就是下面的公式而已:按钮实例的名字.事件名称=function(){//要执行的脚本程序。
}大家只要记住这个公式就可以套用了。
按钮的 AS 就先将到这了,这个可以算是基本技能了。
希望大家都能掌握。
三、影片剪辑的AS编写影片剪辑在flash中可以说是使用最多的一种元件了,那么对于它的AS也是不少。
在讲解之前,我还是要重新说一下电影剪辑AS 的编写规则,和上次讲按钮一样,分为两种,一种是写在电影剪辑本身上,一种是写在时间轴上面。
首先我们先来做个简单的小例子。
或许你不用 AS 就能做出一个小球的移动动画。
但是如果让你用 AS 来实现小球的移动呢?下面来看看如何用 AS 来实现吧。
在这个例子里,你首先会了解到如何在电影剪辑本身上编写 AS,以及编写规则。
1、新建立一个影片剪辑元件,里面你就随便画一个圆吧。
之后把这个影片剪辑拖放到舞台之中(也就是创建一个此影片剪辑的实例)。
2、现在开始编写脚本,选中这个 MC,按 F9 打开动作面板,按照图 01 显示选择 onClipEvent,之后在显示的事件中选择 enterFrame,然后在里面编写脚本如下:this._x+=5这个脚本编写之后应该是:onClipEvent (enterFrame) {// enterFrame的意思四以影片帧频不断地触发此动作this._x += 5; //this 代表这个影片剪辑自身。
_x 表示影片剪辑的X 轴坐标。
}呵呵,按下你的 ctrl+回车测试一下吧,一个简单的移动动画就搞定了。
从这个例子咱们不难看出,如果把 AS 写在影片剪辑本身上,那么它是有自己的书写格式的。
正确的书写格式就是:onClipEvent (事件) {//需要执行的脚本程序}这个可以看成是公式,你记住就行了,是写在影片剪辑身上的。
括号里的“事件”其实是个触发器,当事件发生时,执行该事件后面花括号中的语句。
,具体有哪些事件,我把它们都列出来:- load 影片剪辑一旦被实例化并出现在时间轴中时,即启动此动作。
- unload 在从时间轴中删除影片剪辑之后,此动作在第一帧中启动。
处理与Unload 影片剪辑事件关联的动作之前,不向受影响的帧附加任何动作。
- enterFrame 以影片帧频不断地触发此动作。
- mouseMove 每次移动鼠标时启动此动作。
_xmouse 和 _ymouse 属性用于确定当前鼠标位置。
- mouseDown 当按下鼠标左键时启动此动作。
- mouseUp 当释放鼠标左键时启动此动作。
- keyDown 当按下某个键时启动此动作。
使用 Key.getCode 方法获取最近按下的键的有关信息。
- keyUp 当释放某个键时启动此动作。
使用 Key.getCode 方法获取最近按下的键的有关信息。
- data 当在 loadVariables 或 loadMovie 动作中接收数据时启动此动作。
当与loadVariables 动作一起指定时,data 事件只发生一次,即加载最后一个变量时。
当与loadMovie 动作一起指定时,获取数据的每一部分时,data 事件都重复发生。
了解了事件之后,你可以自己试着修改一下脚本,如果让你们点一下鼠标,舞台上的圆就移动一下,该怎么做呢?关于把 AS 写在影片剪辑本身的例子先讲到这,下面来看看如果把 AS 写在时间轴上面的话,应该怎么写。
首先你把刚才的脚本去掉。
然后需要为这个影片剪辑实例起一个名字,比如起名为 mc ,再选中时间轴的第一桢,打开动作面板,输入以下脚本:mc.onEnterFrame = function() {this._x += 5; //你也可以把这句改为 mc._x+=5 自己想一下为什么。